Algoritmia - Fibonnacci

 
Vista:

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
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Alejandro

Generación de la serie de Fibonacci en ensamblador

Publicado por Alejandro (307 intervenciones) el 12/03/2024 22:49:13
Yamila, para generar la serie de Fibonacci en lenguaje ensamblador para los primeros 24 números, puedes seguir un enfoque iterativo utilizando registros y operaciones aritméticas básicas. Aquí te muestro un posible algoritmo en lenguaje ensamblador para hacerlo:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
section .data
    fib_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 .text
    global _start
 
_start:
    mov ecx, n                 ; Cargamos el contador con el número de elementos
    mov 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 Fibonacci
 
next_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 siguiente
    mov 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 éxito
    int 80h                    ; Llamada al sistema para terminar el programa

Este código genera los primeros 24 números de Fibonacci y los almacena en un arreglo llamado `fib_sequence`. Puedes modificar el código según tus necesidades, por ejemplo, para imprimir los números de la secuencia en lugar de simplemente almacenarlos en un arreglo. Además, ten en cuenta que este código está diseñado para sistemas operativos basados en Linux. Si estás trabajando en un entorno diferente, es posible que necesites ajustarlo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar