计算机中的源码 反码 补码
来源:互联网 发布:淘宝联盟自己买自己的 编辑:程序博客网 时间:2024/04/30 01:40
负数的补码就是对反码加1,而正数不变,正数的原码反码补码是一样的
假设字长为8bits 要完成,1-1 =0
( 1 ) - ( 1 )
= ( 1 ) + ( -1 )
= (00000001)+ (10000001) -----------------原码计算
= (10000010)= ( -2 )
( 1 ) - ( 2 )
= ( 1 ) + ( -2 )
= (00000001)+ (10000010) -----------------原码计算
= (10000011)= ( -3 )
显然结果不正确.
因为在两个正数的加法运算中是没有问题的,于是就发现问题出现在带符号位的负数身上,对除符号位外的其余各位逐位取反就产生了反码.反码的取值空间和原码相同且一一对应.
下面是反码的减法运算:
(1)+(-1)
= (00000001)+ (11111110)----反码计算
= (11111111)
= ( 10000000 )
=(-0)有问题
按上面同样的方法计算1-2=-1
1+(-2)
= (00000001)+ (11111101)----反码计算
= (11111110)
= ( 10000001 ) = (-1)正确
补码的加减运算如下:
下面是补码的运算:
( 1 )- ( 1 )= ( 1 )+ ( -1 )
=(00000001)补+ (11111111)补((11111110)+1)(反码加1)
= (00000000)补= ( 0 )正确
( 1 )- ( 2)= ( 1 )+ ( -2 )
= (00000001)补+ (11111110)补
= (11111111)补= ( -1 ) 正确
(-1) = (10000001)原码=(11111110 )反码 =((11111110 )+ 1)补码
由于计算机无法识别负数的加减运算,补码的出现很好的解决了这个问题,可以吧负数转换成可以运算的正数。 0 0
- 计算机中的源码 反码 补码
- 计算机源码,补码,反码
- 计算机数据表示 源码、反码、补码、移码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码,反码,补码
- 计算机中的原码、反码、补码
- 计算机中的原码、补码和反码
- 计算机中的原码、反码和补码
- 计算机中的原码、补码和反码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- 计算机中的原码、反码和补码
- OS X 10.11 安装Cocoapods 出现问题的解决方法,10.11cocoapods
- Android中px,dp,sp单位的区别和应用
- 自定义View
- myeclipse中的快捷键
- SSE指令集简记
- 计算机中的源码 反码 补码
- 抢鲜版 Android studio 2.2 pre 版本,千万不要想用
- 为Druid监控配置访问权限(配置访问监控信息的用户与密码)
- cocos2d 了解
- group by +left join+count(1)查询实例
- std::string assign函数使用
- Effective Java 读书笔记
- 华为OJ——汽水瓶
- LADP