|
5鱼币
写出下面的指令执行后,ZF,PF,SF,CF,OF等标志位的值
CF OF SF ZF PF
sub al,al 0 0 0 1 1
mov al,10h 0 0 0 1 1
add al,90h 0 0 1 0 1
mov al,80h 0 0 1 0 1
add al,80h 1 1 0 1 1
mov al,0fch 1 1 0 1 1
add al,05h 1 0 0 0 0
mov al,7dh 1 0 0 0 0
add al,0bh 0 1 1 0 1
在做的过程中每次都纠结,是该用有符号算还是无符号算,又是怎么判断该用有符号算还是用无符号算,有时用无符号算结果就对
有时用无符号算又不对,我还真是纠结,特别是OF溢出标志,都不知道该用有符号算还是用无符号算,真是纠结。老师说OF都是
有符号算法的,CF是用无符号算的,那么在同一条指令里,不就是要用两种符号运算了吗?我还是真弄不清楚哇!!!
希望各位哥哥姐姐,能帮我解下疑问,先谢谢。。。。。。。谢谢!
|
最佳答案
查看完整内容
mov al,80h
add al,80h
相加100H ,是3位16进制数,要装进al里面去,但是al里面只能装2位16进制数,所以就溢出了
mov al,0fch
add al,05h
相加是1H,而不是101h,是十进制的1,因为0fch放进al就是十进制的-4,-4+5=1,所以没有溢出
|