8085程式用於檢查8位數的兩個半位元組是否相等
我們將學習如何檢查一個數的兩個半位元組是否相同。
問題陳述
編寫8085組合語言程式,以檢查高半位元組和低半位元組是否相同。
討論
為了檢查半位元組,我們首先需要進行掩碼操作。因此,我們需要掩蓋低半位元組和高半位元組,並將它們儲存到不同的暫存器中。高半位元組將向右移動四位,使其成為低半位元組。然後我們可以檢查兩者是否相同。如果它們相同,則在F150位置儲存00,否則在F150位置儲存FF。
輸入
地址 | 資料 |
---|---|
F050 | FE |
地址 | 資料 |
---|---|
F050 | AA |
流程圖
程式
地址 | 十六進位制程式碼 | 標籤 | 助記符 | 註釋 |
---|---|---|---|---|
F000 | 3A, 50 F0 | | LDA F050 | F050記憶體單元 |
F003 | 47 | | MOV B, A | 將A載入到B |
F004 | E6, 0F | | ANI 0F | 掩蓋高半位元組 |
F006 | 4F | | MOV C, A | 將A載入到C |
F007 | 78 | | MOV A, B | 將B載入到A |
F008 | E6, F0 | | ANI F0 | 掩蓋低半位元組 |
F00A | 07 | | RLC | 將A左移旋轉 |
F00B | 07 | | RLC | 將A左移旋轉 |
F00C | 07 | | RLC | 將A左移旋轉 |
F00D | 07 | | RLC | 將A左移旋轉 |
F00E | B9 | | CMP C | 比較C和A |
F00F | CA, 17, F0 | | JZ LABEL | 如果Z標誌啟用,則跳轉到LABEL |
F012 | 3E, FF | | MVI A, FF | 將FF載入到A |
F014 | C3, 19, F0 | | JMP STORE | 跳轉到STORE |
F017 | 3E, 00 | LABEL | MVI A, 00 | 將00H載入到A |
F019 | 32, 50, F1 | STORE | STA F150 | 將結果儲存在F150記憶體單元 |
F01C | 76 | | HLT | 結束程式 |
輸出
地址 | 資料 |
---|---|
F150 | FF |
地址 | 資料 |
---|---|
F150 | 00 |
廣告