8086 程式將 ASCII 轉換為 BCD 數
在本程式中,我們將瞭解如何從 ASCII 值找到等效的 BCD 數。
問題陳述
編寫 8086 組合語言程式,從一個 ASCII 值找到等效的 BCD 數。該數字儲存在記憶體位置 2050,並將結果儲存在記憶體位置 3050。
討論
此程式可以將數字的 ASCII 值更改為其 BCD(十進位制)形式。數字的 ASCII 值如下所示
ASCII(十六進位制) | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 |
---|---|---|---|---|---|---|---|---|---|---|
BCD | 00 | 01 | 02 | 03 | 04 | 05 | 06 | 07 | 08 | 09 |
從該表格中,我們可以很容易地發現 ASCII 值的最後一個半位元組實際上是 BCD 等效值。因此,為了取最後一個半位元組,我們對上半位元組進行掩碼處理,並將下半位元組作為結果。
輸入
地址 | 資料 |
---|---|
… | … |
2050 | 39 |
… | … |
流程圖
程式
輸出
地址 | 資料 |
---|---|
… | … |
3050 | 09 |
… | … |
廣告