原码、反码、补码及计算机表示负数

一、原码、反码、补码基本概念(以八位二进制为例)

原码:数值位就是真值的绝对值,符号位位“0”时表示正数,符号位为“1”时表示负数,原码又称带符号的绝对值。(将一个整数,转换成二进制,就是其原码)

[+1]= 00000001
[-1]= 10000001

反码:反码通常是用来由原码求补码或者由补码求原码的过渡码。原码符号位不变,其余位取反。(正数的反码就是其原码,负数的反码是将原码中除符号位以外的每一位取反。)

[+1] = [00000001]原 = [00000001]反
[-1] = [10000001]原 = [11111110]反

补码:补码是计算机把减法运算转化为加法运算的关键编码。在反码的基础上整个数加1,逢2进1。(正数的补码就是其原码,负数的反码+1就是补码)

[+1] = [00000001]原 = [00000001]反 = [00000001]补
[-1] = [10000001]原 = [11111110]反 = [11111111]补

二、计算机表示负数

在计算机中,正数是直接用原码表示,负数用补码表示。
例如:+4变为-4
00000100——10000100——11111011——11111100
即:原码符号位由0变为1,然后符号位不变,其余位取反,最后整个数加1。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值