stack segment stack
db 512 dup(?)
stack ends
_BSS segment word public 'BSS'
b@ label byte
b@w label word
_BSS ends
_DATA segment word public 'DATA'
d@ label byte
d@w label word
input1 db "Please input the size of Fibonacci series(0~22):", 0ah, 0dh, '$'
input2 db " ", '$'
input3 db "The Fibonacci series you wanted is as following:", 0ah, 0dh, '$'
_maxn label word
dw 16191
_first_block label word
dw 0
_DATA ends
code segment
assume ds: _data, cs: code, ss: stack
main:
mov ax, _data
mov ds, ax
mov ax, stack
mov ss, ax
call _main
call lineFeed
jmp done
_main proc near
push bp
mov bp,sp
sub sp,6
push si
push di
xor si,si
mov di,1
lea dx, input1
mov ah, 09h
int 21h
call readsiw ;指定数列长度
mov word ptr [bp-4],ax
mov word ptr [bp-6],1
【8086汇编复习】8086汇编输出Fibonacci(斐波那契)数列(键盘输入数列长度:1~22之间,最大Fibonacci值为28657,输入输出有提示信息)
最新推荐文章于 2023-10-26 20:58:01 发布
本文介绍了如何使用8086汇编语言编写程序,来输出用户指定长度(1~22之间)的斐波那契数列,程序能够处理的最大Fibonacci值为28657。程序包含键盘输入处理和友好的提示信息。
摘要由CSDN通过智能技术生成