日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

汇编 DA A 十进制调整指令

發布時間:2024/9/27 27 豆豆
生活随笔 收集整理的這篇文章主要介紹了 汇编 DA A 十进制调整指令 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

【轉載】小伙伴們求同去《匯編 DA A十進制調整指令》, 一起來圍觀吧 https://blog.csdn.net/m0_58836581/article/details/121525715?utm_source=app&app_version=4.20.0&code=app_1562916241&uLinkId=usr1mkqgl919blen

二進制加法指令不能完全適用BCD碼十進制的加法運算,故應對壓縮的BCD碼的加法結果需要進行有條件的修正。

出錯原因及調整方法
BCD碼(4位二進制編碼)共有十六個編碼,但只用了其中的10個,剩余六個就沒有用到。而這六個沒有用到的編碼為無效編碼。故1位BCD碼加法運算出錯的情況有兩種:

1)相加結果大于9無進位,及已經進入無效編碼區;

2)相加結果有進位,及已經跳過無效編碼區;

無論哪一種出錯情況,都是因為六個無效編碼造成的。

調整方法是把運算結果加6調整,即所謂的十進制調整修正。

修正方法
1)累加器低四位大于9或輔助進位位Ac=1,則進行低四位加6修正。

2)累加器高四位大于9或進位位Cy=1,則進行高四位加6修正。

3)累加器高四位為9,低四位大于9,則高四位和低四位分別加6修正。

整個過程由DA A可自動實現

舉例
(A)=56H,(R5)=67H,把他們看作兩個壓縮的BCD數進行BCD數加法。

執行指令:

ADD A,R5
DA A
0101 0110 (56H)

+) 0110 0111 (67H)

= 1011 1101 高四位和第四位都大于9 故要都加6來對結果修正、

+) 0110 0110

= 1 0010 0011

結果(A)=23H,Cy=1。

56+65=123 結果是正確的

總結

以上是生活随笔為你收集整理的汇编 DA A 十进制调整指令的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。