Daa指令是什么
2个回答
展开全部
DAA(Decimal Adjust After Addition)是组合(压缩)BCD码的加法调整指令。
将AL的内容调整为两位组合型的二进制数。调整方法与AAA指令类似,不同的是DAA指令要分别考虑AL的高4位和低4位。
如果AL的低4位大于9或AF=1,则AL的内容加06H,并将AF置1;然后如果AL的高4位大于9或CF=1,则AL的内容加60H,且将CF置1。如果两个都不满足,则将AF,CF清零。
BCD码(Binary-Coded Decimal),用4位二进制数来表示1位十进制数中的0~9这10个数码,是一种二进制的数字编码形式,用二进制编码的十进制代码。BCD码这种编码形式利用了四个位元来储存一个十进制的数码,使二进制和十进制之间的转换得以快捷的进行。
扩展资料:
DAA指令举例
两个组合BCD码的加法运算
MOV AL,37H
MOV BL,35H
ADD AL,BL ;两个16进制数相加,AL此时为37H+35H=6C。
DAA ;DAA调整,这时AL为72H。
参考资料来源:百度百科-BCD码
参考资料来源:百度百科-DAA
展开全部
DAA ;AL←将AL中的加和调整为压缩BCD码
该指令跟在以AL为目的操作数的ADD或ADC指令之后,对AL的二进制结果进行十进制调整,并在AL得到十进制结果。DAA指令对OF标志无定义,按结果影响所有其他标志,其中CF反映压缩BCD码相加的进位状态。
例:压缩BCD码的加法运算
mov al,68h ;al=68h,表示压缩BCD码68
mov bl,28h ;bl=28h,表示压缩BCD码28
add al,bl ;二进制加法:al=68h+28h=90h
daa ;十进制调整:al=96h
;实现压缩BCD码加法:68+28=96
所以应该选择:D
该指令跟在以AL为目的操作数的ADD或ADC指令之后,对AL的二进制结果进行十进制调整,并在AL得到十进制结果。DAA指令对OF标志无定义,按结果影响所有其他标志,其中CF反映压缩BCD码相加的进位状态。
例:压缩BCD码的加法运算
mov al,68h ;al=68h,表示压缩BCD码68
mov bl,28h ;bl=28h,表示压缩BCD码28
add al,bl ;二进制加法:al=68h+28h=90h
daa ;十进制调整:al=96h
;实现压缩BCD码加法:68+28=96
所以应该选择:D
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询