回忆过去 发表于 2012-6-28 21:00:53

关于 OF 和 CF

AL = 0B4H
BL = 11H
则执行完
MUL BL
IMUL BL

OF = ?
CF = ?

jun 发表于 2012-6-28 21:47:11

MUL BL后OF=1,CF=1
IMUL BL 后OF=1,CF=1

回忆过去 发表于 2012-6-28 22:22:07

为什么解释一下,谢谢!

九墓 发表于 2012-6-28 22:48:03

嘿嘿。。我是来大酱油的

梦想与现实 发表于 2012-6-29 10:14:47

楼上的哥们貌似很喜欢打酱油呀 {:5_109:}

jun 发表于 2012-6-29 19:45:20

回忆过去 发表于 2012-6-28 22:22 static/image/common/back.gif
为什么解释一下,谢谢!

对MUL指令,若乘积(这里乘积放在AX)的高半部分(即AH)结果为0,则CF和OF置0,否则CF和OF置1
MUL BL后(AX)=0BF4H,(AH)=0BH,故CF和OF置1

对IMUL若乘积(这里乘积放在AX)的高半部分是低半部分(AL)的符号扩展(即若AL为负数,对AL符号扩展后AH为OFFH,若AL为正数,对AL符号扩展后AH为0H),则CF和OF置0,否则CF和OF置1
IMUL BL 后(AX)=1034H ,如果是对AL的符号扩展的话AH应该为OFFH,而现在AH为10H,故CF和OF置1
页: [1]
查看完整版本: 关于 OF 和 CF