原码,反码和补码

本文介绍了原码、反码和补码的概念,包括它们在计算机中表示有符号整数的方式。原码是直接表示二进制形式的数字,反码是通过翻转每个位来获取,而补码是最常见的表示方法,用于正负数的表示。在补码中,正数保持不变,负数是原码取反加1。文章通过实例详细解释了两种不同负数的补码计算过程。
摘要由CSDN通过智能技术生成

原码 true code

原码很简单,一个10进制正数通过除2法转换成的2进制数就是原码。

比如8的原码是:1000


反码 complement,bitwise NOT

也很简单,就是翻转每个bit。比如:

NOT 0111  (decimal 7)
  = 1000  (decimal 8)


C/C++语言中,用~运算符就可以得到反码。


One's complement

这是一种对有符号整数的计算机内部二进制表示方法,in short,正数相同,负数用反码。下面的例子来自wikipedia.

The table below shows all possible values in a 4-bit system, from −7 to +7.

     +      -
 0   0000   1111   Note that +0 and −0 return TRUE when tested 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值