A-A+
执行下列3条指令后 AX寄存器中的内容是()。 MOV AX ‘8’ ADD AL ‘9’
问题详情
执行下列3条指令后,AX寄存器中的内容是()。 MOV AX,‘8’ ADD AL, ‘9’ AAA
A.0017H
B.0077H
C.0107H
D.0071H请帮忙给出正确答案和分析,谢谢!
参考答案
正确答案:C
解析:AAA指令助记符——加法运算后的ASCII调整(非压缩的BCD码)。无操作数,调整的加法结果在AL中。AF和CF的状态改变说明结果大于9。检查AL的低四位是否为合法的BCD码(0~9),如果合法就清除AL的高四位以及AF和CF标志。当AL的低四位表示的数大于9或AF=1时,将AL加6,AH加1,并使AF和CF置位,清除AL中的高四位。任何一个A~F之间的数加上6以后,都会使AL低4位产生0~9之间的数,从而达到调整的目的。本题中,执行完加法指令后,AL中为0111000lB,标志位AF为1。执行AAA指令的调整步骤后,AX中的内容为0107H。