原码、反码、补码、浮点格式总结

1. [1000 0000]作为补码表示-128不是算出来的, 是规定的,因为-0原码[1000 0000]在用原码规则来表示数是没有意义的,就浪费了这个编码, 所有要让这个编码有意义,就 整出来取反+1这套规则刚好能把-0原码【1000 0000】整到了-127【1000 0001】后面,所以用它来表示-128, 逻辑也正确: -128 = -127 - 1 = 【1000 0001】 - 1 = 【1000 0000】, 然后就把这套规则命名为补码,所以-0原码【1000 0000】在补码系统中表示-128不是推导的,是直接将-0原码【1000 0000】在补码系统中直接规定为补码表示-128

2. 在原码中0的表示不是唯一的,假设取4位原码,最高位是符号位,那么0的原码有两种表示方式:0000和1000

     原码的运算优点是直观,但做加减运算时要判别符号位是否异同,因而增加运算时间。

3. 在反码中0的表示也不是唯一的,假设取4位原码,最高位是符号位,那么0的原码有两种表示方式:0000和1111

   反码在做加法运算时,如果符号位相加后出现进位,则要把它送回到数的最低位进行相加,也会增加运算时间

4. 补码中0表示是唯一的

    在补码中符号位也参与运算,如果符号位发生进位,则把进位的1舍弃就可以了,因而运算非常方便

5. 补码的设计目的是:
1>. 使符号位能与有效值部分一起参加运算,从而简化运算规则.
2>. 减运算转换为加运算,进一步简化计算机中运算器的线路设计.

计算机浮点数的表示方法请参考以下链接:

https://blog.csdn.net/techx/article/details/43830781

浮点表示法中,几种特殊值的表示方法:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值