二进制位运算

1.原码 反码 和 补码

二进制位元算包括按位与、按位或、按位异或、取反、左移以及右移这几种运算,运算都使用补码,结算的结果也是补码

如果其他进制,比如最常见的十进制要进行二进制位运算,那么先得把十进制数转成二进制数

在了解二进制位运算之前,就要先掌握进制转换,那么先来复习一下几个概念:原码、反码、补码

以下我们假设整数均用1个字节表示,1个字节即8个二进制位

 

1.1 原码

计算机对数字的二进制表示,原码使用最高位表示符号位:0表示正数,1表示负数,比如

0  0  0  0       1  0  1  1    =====》 表示正数  11

1  0  0  0       1  0  1  1    =====》 表示负数  -11

 

原码的缺点是:不能直接参与运算

比如上述 11 + (-11) 结果应该为 0 才对,但是如果我们把二进制直接相加(注意逢2进1)

1  0  0  1       0 1 1  0    =====》 表示负数  -22

很明显不对,所以为了表示正确的计算,又定义了反码和补码的,参与运算的都是补码

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值