8085程式列印輸入整數的乘法表
在這個程式中,我們將學習如何生成一個整數的乘法表。
問題陳述
編寫一個8085組合語言程式,生成輸入整數的乘法表。數字儲存在F050中,乘法表將從F051開始儲存。
討論
乘法表生成基本上就是建立乘法表。我們獲取數字並將其儲存到B中。並將計數器初始化為0A(十進位制為10)。在每一步中,我們將B與A相加並將A的值儲存到記憶體中,並將計數器減1。這些步驟將重複,直到計數器變為0。
輸入
地址 | 資料 |
---|---|
… | … |
F050 | 4 |
… | … |
流程圖
程式
地址 | 十六進位制程式碼 | 標籤 | 助記符 | 註釋 |
---|---|---|---|---|
F000 | 21, 50 F0 | | LXI H,F050H | 儲存數字的記憶體位置 |
F003 | 46 | | MOV B,M | HL對指向的記憶體中的數字 |
F004 | 0E, 0A | | MVI C,0AH | 將計數器初始化為0AH |
F006 | AF | | XRA A | 清零累加器 |
F007 | 80 | LOOP | ADD B | Acc = Acc + B |
F008 | 23 | | INX H | 指向下一個位置 |
F009 | 77 | | MOV M,A | 將A儲存到記憶體中 |
F00A | 0D | | DCR C | 將C減1 |
F00B | C2, 07, F0 | | JNZ LOOP | 如果Z不為1,則跳轉到LOOP |
F00E | 76 | | HLT | 終止程式 |
輸出
地址 | 資料 |
---|---|
… | … |
F051 | 04 |
F052 | 08 |
F053 | 0C |
F054 | 10 |
F055 | 14 |
F056 | 18 |
F057 | 1C |
F058 | 20 |
F059 | 24 |
F05A | 28 |
… | … |
廣告