变量X,Y,Z均为一字节压缩BCD码表示的十进制数,写出指令序列,求它们的和(用2字节压缩BCD码表示)。
正确答案:
XOR AX,AX;清AX,用于存放2字节结果
MOV AL,X
ADD AL,Y;完成X+Y
DAA;压缩BCD码加法调整
ADC AH,0;把可能的进位收集到AH中;AH中最大的可能值为2,因此不需要BCD加法调整
ADD AL,Z;完成X+Y+Z
DAA;压缩BCD码加法调整
ADC AH,0;把可能的进位收集到AH中;计算完成,结果(2字节压缩BCD码)在AX中
MOV AL,X
ADD AL,Y;完成X+Y
DAA;压缩BCD码加法调整
ADC AH,0;把可能的进位收集到AH中;AH中最大的可能值为2,因此不需要BCD加法调整
ADD AL,Z;完成X+Y+Z
DAA;压缩BCD码加法调整
ADC AH,0;把可能的进位收集到AH中;计算完成,结果(2字节压缩BCD码)在AX中
答案解析:有

微信扫一扫手机做题