【操作系统】-128 的 原码,反码,补码

什么是原码,反码,补码?

正数5:
 
   5的二进制是:00000101
 
原码:00000101//就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
 
反码:00000101//负数的反码是对其原码逐位取反,但符号位除外。
 
补码:00000101//负数的补码是在其反码的末位加1。
 
------------------------------------------------------
 
负数:-5:
 
   5的二进制是:00000101
 
原码:10000101//就是二进制定点表示法,即最高位为符号位,“0”表示正,“1”表示负,其余位表示数值的大小。
 
反码:11111010//负数的反码是对其原码逐位取反,但符号位除外。
 
补码:11111011//负数的补码是在其反码的末位加1。

原位:无
反码:无
补码:10000000
1 原码和反码都无法表示, 补码是10000000
2 -128没有反码
3 反码只能表示0到127,-0到-127
4.二进制原码或者8位二进制反码的表示范围是-127 ~ +127,不能表示-128;而8位二进制补码的表示范围是-128 ~ +127,-128的8位二进制补码为10000000。

在这里插入图片描述

将负数用补码表示,实际上是实现了一种从[-128, 127]到[0, 255]的映射。如下所示:

+----------------------------+
| 255      -1      11111111  |
| 254      -2      11111110  |
| 253      -3      11111101  |
| 252      -4      11111100  |
| 251      -5      11111011  |
| 246      -10     11110110  |
| 236      -20     11101100  |
| 226      -30     11100010  |
| 216      -40     11011000  |
| 206      -50     11001110  |
| 196      -60     11000100  |
| 186      -70     10111010  |
| 156      -100    10011100  |
| 129      -127    10000001  |
| 128      -128    10000000  |
| 127      127     01111111  |
| 100      100     01100100  |
| 70       70      01000110  |
| 60       60      00111100  |
| 50       50      00110010  |
| 40       40      00101000  |
| 30       30      00011110  |
| 20       20      00010100  |
| 10       10      00001010  |
| 5        5       00000101  |
| 4        4       00000100  |
| 3        3       00000011  |
| 2        2       00000010  |
| 1        1       00000001  |
| 0        0       00000000  |
+----------------------------+
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值