【-1和-128补码表示问题】定点小数-1的补码是1.0000000;定点整数-128的补码是1,0000000

注:-128的补码和定点小数-1的补码在补码中比较特殊

先看公式

公式

1. -128的补码是1,0000000?

[+0]原=0,000 0000 [-0]原=1,000 0000
[+0]反=0,000 0000 [+0]反=1,111 1111
[+0]补=0,000 0000 [-0]补=0,000 0000
正数的原码补码反码一样
而负数的反码是原码数值位全部取反,负数的补码则是原码数值位全部取反+1,符号位向上进位得到第九位,得到[-0]补=10,000 0000,但是采用机器字长只有8bit,所以第九位1丢弃,最终得到的[-0]补=0,000 0000=[+0]补
因此真值0的补码只有一种表现形式,而多出来一种表现形式,则将[x]补=1,0000000表示x=-128 ,补码整数的表示范围就会比原码多表示 -2^n )

2. 定点小数-1的补码是1.0000000?

定点小数-1
准确的说是-1.0
我们通常求补码是在原码的基础上取反+1,但是-1.0的原码通过纯小数的原码表示公式却表示不了,我们无法得到-1.0的原码
但我们可以通过纯小数的补码表示公式得到-1.0的补码:
[-1.0]补=2+(-1.0)=1.000 0000

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

@赵士杰

如果对你有用,可以进行打赏,感

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值