fibonacci.asm

Run Settings
LanguageAssembly
Language Version
Run Command
section .data msg db "Hello World!", 0ah n dd 10 a dd 0 b dd 1 salida db "0000", 0ah section .text global _start _start: ;------------------------------------------------------------------------------- mov ecx, 0 mov eax, 0 fib: mov eax, 0; limpias el registro para que no acumule las sumas anteriores ; [b] ya almacena la suma, no sumes dos veces lo mismo add eax, dword[a] add eax, dword[b] mov ebx, dword[b] mov dword[a], ebx mov dword[b], eax inc ecx cmp ecx, dword[n] jl fib ;------------------------------------------------------------------------------- ; para ver el resultado en pantalla de nunmero mayores a 255 los dividi entre ; 10 para que me mmostrara los caracteres del codigo ascci mov edx, 0 mov ebx, 10 div ebx ; la division que se realiza es la siguiente ; (edx:eax)/ ebx ; resultado -> eax ; residuo -> edx mov ecx, edx add ecx, 48 mov [salida], ecx mov edx, 0 mov ebx, 10 div ebx ; la division que se realiza es la siguiente ; (edx:eax)/ ebx ; resultado -> eax ; residuo -> edx mov ecx, edx add ecx, 48 mov [salida+1], ecx mov edx, 0 mov ebx, 10 div ebx ; la division que se realiza es la siguiente ; (edx:eax)/ ebx ; resultado -> eax ; residuo -> edx mov ecx, edx add ecx, 48 mov [salida+2], ecx mov edx, 0 mov ebx, 10 div ebx ; la division que se realiza es la siguiente ; (edx:eax)/ ebx ; resultado -> eax ; residuo -> edx mov ecx, edx add ecx, 48 mov [salida+3], ecx ; se imprime el numero al reves, 377 se impime como 7730 mov rax, 1 mov rdi, 1 mov rsi, salida mov rdx, 4 syscall mov rax, 60 mov rdi, 0 syscall
Editor Settings
Theme
Key bindings
Full width
Lines