请教一道简单的汇编语言题
分析下列程序段的执行结果:
MOV AL,78H
MOV BL,0C3H
ADD AL,BL
结果:AL= H,CF= ,OF= 。(设为带符号数)
不要只填空,帮忙详细解释一下运算结果对CF和OF的影响。谢谢!
答案:MOV AL,78H ; 将立即数78H传送给累加器AX的低位字节AL
MOV BL,0C3H ;将立即数0C3H传送给寄存器BX的低位字节BL
ADD AL,BL ;不带进位的加法运算 AL和BL的内容相加 结果送AL保存 运算时会影响到标志寄存器的相应位的状态值。
十六进制数相加 78H+0C3H 结果为3BH 低位相加8+3=11 即十六进制的B 没有进位 高位相加7+12 为19 逢十六进一 会产生一个进位1 剩余数为3
由于78H最高位符号位=0 为正数 0C3H 最高位符号位=1 为负数 相加时,不会产生溢出 二者只会越加越小。
结果:AL=3BH,进位标志 CF=1 ,溢出标志 OF= 0 。
哈哈 好了 别忘给点加分呀
其他:很简单,如果这样的问题都要问,墙上挂张柯南吧,或者信春哥,或者考试时不穿内裤。
上一个:汇编编程
下一个:汇编语言:有一个首地址为y的10个字节的数组,说明下列程序段的功能。