补码的求法以及八位二进制补码所能表示的数的范围

补码用来解决整数的存储问题,整数在计算机中是以二进制的补码形式进行存储的,

求十进制对应的二进制补码

1求正整数的二进制补码:正整数的二进制补码与其二进制原码相同,

2:求负整数的二进制补码:先求与该负数相对应的正整数的二进制代码,然后所有位取反加1,不够位数时左边补1,例如,求-3的二进制补码,先求3的二进制补码,3=11,取反之后为00,加1之后为01,假设用八位二进制表示,那么左边补6个1,也就是1111 1101。

3:0的二进制补码是0;关于0的补码你有一个误区,你觉得首先把0看做是+0,求其补码得到0000 0000,然后把0看做是-0,然后求其补码得到,1111 1110,发现0还是有两个补码,补码还是没有解决0的两个补码问题,其实不是的,0根本就没有符号,所以求0的补码根本就不能这样求,要求0的补码应该是1的补码和-1的补码作和,得到的结果就是0的补码,1-1=0000 0001+1111 1111=0000 0000,这才是0的补码,

已知计算机中的二进制补码,求对应的10进制,

1如果首位是0,则表明是正整数,按普通方法求。

2如果首位是1,则表明是负整数,所有位取反然后加1,所得数字就是该负数的绝对值,例如,1110 1111取反之后是0001 0000然后再加1是0001 0001=17,那么最后的结果就是-17.

 

对于八位二进制补码,他所能表示的最大的范围是多少呢,

首先从0000 0000开始分析,0000 0000表示的是0,然后0000 0001表示的是1,………..。0111 1111表示的127,然后下一个是1000 0000,这个补码对应的就是个负数了,1000 0000=-128,然后1000 0001就是-127,最后1111 1111对应的就是-1.因此,八位二进制补码所能表示的范围是[-128,127].

 

  • 3
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

陈 洪 伟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值