拿拿林 2021-07-29 07:31 采纳率: 95.7%
浏览 42
已结题

关于yuan码反码补码的问题

我不知道yuan码,补码,反码之间的换算应该怎么搞,目前看到的第一个关系是 补码=反码+1,但是接下来的例题又不是了
img

img
我觉得例题的补码到反码,不就应该是减1,是1111…110吗

  • 写回答

2条回答 默认 最新

  • 八云黧 2021-07-29 08:59
    关注

    两个反码不是一个反码,第一个PPT的反码是原码的反码,第二个PPT的反码是补码的反码
    原理可以分析一下:不考虑符号位,一个x位二进制数a,和它全部取反的二进制数~a有什么关系?显然a+~a=2^(x+1)-1
    即~a=2^(x+1)-1-a,将一个数取反就会得到这个结果。
    考虑一个x位原码表示的数c,它的补码的值c'=~c+1=2^(x+1)-1-c+1=2^(x+1)-c。
    下面分析两种情况:

    1. 直观上的想法,取补码码的逆运算:对补码先减一再取反
      c''=~(c'-1)=~(2^(x+1)-c-1)=2^(x+1)-1-(2^(x+1)-c-1)=2^(x+1)-1-2^(x+1+c+1)=c
    2. 对补码再求补,是否能得到原码
      (c')'=~(c')+1=2^(x+1)-1-c'+1=2^(x+1)-c'=2^(x+1)-2^(x+1)+c=c

    所以第二张PPT是对补码求补依次得到原码,给出的反码是补码对应的反码

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 8月6日
  • 已采纳回答 7月29日
  • 创建了问题 7月29日

悬赏问题

  • ¥20 Windows 驱动开发版本疑问相关
  • ¥15 MAC 未能打开磁盘映像
  • ¥15 fastcap使用,二维导体输入问题
  • ¥15 hosts修改后不能访问
  • ¥15 关于化学反应速率C++编译问题/FLUENT
  • ¥20 Yolov5训练报错
  • ¥15 Unity发布gzip压缩的webgl之后让浏览器可以正常显示画面
  • ¥15 ASP.net Gridview插件数据更新失败问题
  • ¥15 有没有人知道这种提示怎么关?现在不做ts项目了不知道咋关了,求解,现在我以前的js项目都是这种提示了
  • ¥15 为什么mysql做了碎片化处理data_free还是很高