Fibonnacci
Publicado por yamila (1 intervención) el 24/11/2008 05:58:39
Necesito que alguien me responda cómo puedo hacer un algoritmo para generar la Serie de fibonnacci para los 24 primeros numeros en lenguaje ensamblador.
Valora esta pregunta


0



section .datafib_sequence db 24 dup(0) ; Reservamos espacio para almacenar los 24 números de Fibonacci
n equ 24 ; Número de elementos en la secuencia
section .textglobal _start
_start: mov ecx, n ; Cargamos el contador con el número de elementosmov ebx, 1 ; Inicializamos el segundo número de Fibonacci (F(1))
mov esi, 0 ; Inicializamos el primer número de Fibonacci (F(0))
mov edi, fib_sequence ; Dirección de inicio de la secuencia de Fibonaccinext_fibonacci:mov [edi], esi ; Almacenamos el número actual de Fibonacci en el arreglo
add edi, 1 ; Nos movemos al siguiente elemento del arreglo mov eax, ebx ; Guardamos temporalmente el segundo número de Fibonacci add eax, esi ; Sumamos los dos últimos números de Fibonacci para obtener el siguientemov esi, ebx ; Actualizamos el primer número de Fibonacci (F(i-1))
mov ebx, eax ; Actualizamos el segundo número de Fibonacci (F(i))
loop next_fibonacci ; Repetimos el proceso para los siguientes números
; En este punto, la secuencia de Fibonacci se encuentra en fib_sequence ; Puedes hacer lo que desees con ella, como imprimir los números o utilizarlos para otros propósitos; Tu código para imprimir la secuencia de Fibonacci o realizar otras operaciones aquí
; Terminamos el programa
mov eax, 1 ; Código de salida del programa xor ebx, ebx ; Código de salida de éxitoint 80h ; Llamada al sistema para terminar el programa

