计算机原码、反码和补码

计算机存储数据的时候存的是数字的补码
程序员编程能操作的最小单位是字节,申请内存:malloc(字节)
正数的原码,反码,补码是一样的

1.原码

原码=符号位+真值
符号位:最高位表示符号位(0表示正,1表示负)
真值:数字的绝对值的二进制
10的原码:00001010
符号位:0
真值:0001010
256的原码:00000001 00000000
-256的原码:100000001 00000000
56的原码:00111000
171的原码:00000000 10101011
-171的原码:10000000 10101011

2.反码

只有负数才有反码,原码 符号位不变,其他位按位取反
-10的反码:11110101
-256的反码:11111110 11111111

3.补码

负数的补码,反码***加1***
10的补码:00001010
-10的补码:11110110
###4.计算机运算
3+2=5
00000011 + 00000010 = 00000101 ->5
3-2=1
00000011(补码)+11111110(补码)=00000001(补码)->00000001(补码)=1
2-10=-8
00000010 + 11110110=11111000(补码) -> 11110111(反)->10001000->-8

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值