鱼C论坛

 找回密码
 立即注册
查看: 2479|回复: 5

监测点11.2,of标志寄存器的问题

[复制链接]
发表于 2013-8-15 08:44:53 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
检测点11.2
写出下面每条指令执行后,ZF、PF、SF、CF、OF等标志位的值。
              al                 CF    OF    SF    ZF    PF
sub al,al     0h/0000 0000b      0     0     0     1     1
mov al,10h    10h/0010 0000b     0     0     0     1     1
add al,90h    a0h/1010 0000b     0     0     1     0     1
mov al,80h    80h/1000 0000b     0     0     1     0     1
add al,80h    0h/0000 0000b      1     1     0     1     1
mov al,0fch   0fch/1111 1100b    1     1     0     1     1
add al,05h    1h/0000 0001b      1     0     0     0     0
mov al,7dh    7dh/1111 1101b     1     0     0     0     0
add al,0bh    88h/1000 1000b     0     1     1     0     1

为什么add al,0bh这里的of寄存器是=1呢
7d和0b相加应该没有溢出才对啊?



想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2013-8-15 08:55:18 | 显示全部楼层
>127.........
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-15 12:22:39 | 显示全部楼层

怎么是127,我还是没明白

OF标志寄存器 到底是如何计算溢出的
mov al,7dh    7dh/0111 1101b
add al,0bh    88h/1000 1000b
这个时候为什么of寄存器会溢出呢
d7=01111101b
0b=00001011b
计算结果al=88H=10001000
d7和0b都是无符号数,为什么结果of会溢出呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-15 17:55:47 From FishC Mobile | 显示全部楼层
小咒 发表于 2013-8-15 12:22
怎么是127,我还是没明白

OF标志寄存器 到底是如何计算溢出的

操作数看做有符号数,两个正数相加结果变成负数了,所以溢出了。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2013-8-15 18:50:37 | 显示全部楼层
    楼主~!这个问题其实是你还没把11章第5节的内容理解。我以前想这个问题想了2天终于想通了,今天就告诉你我的看法吧,是这样的比如说8位的有符号数据,能表示的范围是-128-127,超出这个范围就是溢出了,d7+0b=88h,88h等于十进制的136,136大于127,所以产生了溢出,88h代表了有符号数-120补码.
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2013-8-17 09:57:36 | 显示全部楼层
281595933 发表于 2013-8-15 18:50
楼主~!这个问题其实是你还没把11章第5节的内容理解。我以前想这个问题想了2天终于想通了,今天就告诉你 ...

恩,我自己概念混淆了,一直认为最大数是FF,也就是255,没有把-128算进去
正数的最大值是7F,也就是127
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-9-29 05:37

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表