8085程式交換兩個8位數
在本程式中,我們將瞭解如何交換兩個數字。
問題陳述
編寫8085組合語言程式,交換儲存在8000H和8001H位置的兩個8位數。
討論
在8085中,有一個指令XCHG。使用它,我們可以交換DE和HL的值。我們將數字儲存到H和D中,然後使用XCHG交換內容。
輸入
地址 | 資料 |
---|---|
. . . | . . . |
8000 | CD |
8001 | 34 |
. . . | . . . |
流程圖
程式
地址 | 十六進位制程式碼 | 助記符 | 註釋 |
---|---|---|---|
F000 | 3A, 00, 80 | LDA 8000H | 將第一個數字載入到A中 |
F003 | 67 | MOV H, A | 將數字儲存到H中 |
F004 | 3A, 01, 80 | LDA 8001H | 將第二個數字載入到A中 |
F007 | 57 | MOV D, A | 將數字儲存到D中 |
F008 | EB | XCHG | 交換DE和HL |
F009 | 7C | MOV A, H | 將H的內容取到A中 |
F00A | 32, 00, 80 | STA 8000H | 交換後儲存第一個數字 |
F00D | 7A | MOV A, D | 將D的內容取到A中 |
F00E | 32, 01, 80 | STA 8001H | 交換後儲存第二個數字 |
F011 | 76 | HLT | 終止程式 |
輸出
地址 | 資料 |
---|---|
. . . | . . . |
8000 | 34 |
8001 | CD |
. . . | . . . |
廣告