同学们提问关于“daa_汇编的DAA问题!!! 急!明天考试了DAA是十进制数加调整...”的问题,52IJ师说平台通过网络上精心整理了以下关于“daa_汇编的DAA问题!!! 急!明天考试了DAA是十进制数加调整...”的一些有用参考答案。请注意:文中所谈及的内容不代表本站的真正观点,也请不要相信各种联系方式。下面是本网所整理的“daa_汇编的DAA问题!!! 急!明天考试了DAA是十进制数加调整...”的相关信息:
汇编的DAA问题!!! 急!明天考试了DAA是十进制数加调整...
科目: 关键词:daaADD对AL中的数进行如下操作:
如果AL的低4位大于9或AF=1,则AL的内容加6,并将AF置1;如果AL的高4位大于9或CF=1,则AL的内容加60H,且将CF置1。
如果你自己愿意找几个数用DEBUG试一试的话,肯定就会明白这句话是什么意思了:
比如:
mov al,19H
add al,13H
daa
执行完前两条之后:AL=2CH,CF=0,AF=0
执行完DAA之后:AL=32H(其实在一个4位的二进制数中+6和-10的结果是一样的
那个定义百科里的解释好像不全,如果AL低4为大于9的话,高4为其实会加一)
看到了吧?其实就是十进制的19+13的结果
在来一个例子:
mov al,19H
add al,19H
daa
执行完前两条之后:AL=32H,CF=0,AF=1
执行完DAA之后:AL=38H(这里就体现到+6的作用了)
结果是十进制的19+19=38
----------------------------------------------
其他的例子:
mov al,92H
add al,32H
daa
执行完前两条之后:AL=C4H,CF=0,AF=0
执行完DAA之后:AL=24,CF=1
92+32=124
mov al,92H
add al,82H
daa
执行完前两条之后:AL=14H,CF=1,AF=0
执行完DAA之后:AL=74H,CF=1
92+82=174
=============================================
所以你那道题的结果是错的,正确结果是AH=09H,CF=1
----WDSYMH
- 评论列表(网友评论仅供网友表达个人看法,并不表明本站同意其观点或证实其描述)
-
