原-补-反-移


一  

计算机对带符号数的表示有三种方法:原码、反码和补码 
   8位原码反码能够表示数的范围是-127~127 
   8位补码能够表示数的范围是 -128~127 
   所以既然范围是-128~127,那肯定是用补码表示的。 
10000000-11111111表示-128到-1,  00000000-01111111表示0-127
补码的1111 1111转换成原码就是1000 0001,也就是-1。
补码就是二进制表示负数的一种方法
引入了补码概念. 负数的补码就是对反码加一,而正数不变,正数的原码反码补码是一样的.在补码中用(-128)代替了(-0),所以补码的表示范围为:

(-128~0~127)共256个. 

注意:(-128)没有相对应的原码和反码, (-128) = (10000000)

二  补码(two’s complement)

 

1、在计算机系统中,数值一律用补码来表示(存储)。

 

主要原因:

使用补码,可以将符号位和其它位统一处理;

同时,减法也可按加法来处理。

另外,两个用补 码表示的数相加时,如果最高位(符号位)有进位,则进位被舍弃。

 

2、补码与原码的转换过程几乎是相同的。

… …


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值