8085程式生成斐波那契數列


在這個程式中,我們將看到如何生成斐波那契數列。

問題陳述

編寫一個8085組合語言程式,僅使用暫存器生成斐波那契數列的前十個元素,並將它們儲存在記憶體位置**8050H**到**8059H**中。

討論

此程式將生成斐波那契數。斐波那契數遵循此關係:對於所有 i > 2,F(i) = F(i - 1) + F(i - 2),其中 F(1) = 0,F(2) = 1。

輸入

在本例中,我們沒有提供任何輸入,此程式將生成十個斐波那契數。

流程圖

程式

地址十六進位制程式碼標籤助記符註釋
800021, 50, 80STARTLXI H 8050H指向輸出緩衝區的指標
8003AF
XRA A清零累加器和暫存器B
800447
MOV B, A
800577
MOV M, A將內容複製到目標位置
80063C
INR A遞增A
800723
INX H轉到下一個目標地址。
800877
MOV M, A移動內容
80 090E, 08
MVI C, 08H初始化計數器
800B80LOOPADD B獲取下一項
800C46
MOV B, M初始化項,例如 F1 = F2
800D23
INX H轉到下一個目標地址。
800E77
MOV M, A寫入輸出緩衝區
800F0D
DCR C遞減計數器,直到達到0 F3= F1 + F2 (A) = (A) + (B) 這是透過指令ADDB完成的。
8010C2, 0B, 80
JNZ LOOP
801376
HLT終止程式


輸出

地址資料
......
805000
805101
805201
805302
805403
805505
805608
80570D
805815
805922
......

更新於:2019年7月30日

6K+瀏覽量

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告