负数的补码怎么求

 我来答
布灵波qS
推荐于2019-10-18 · TA获得超过8101个赞
知道答主
回答量:31
采纳率:50%
帮助的人:9561
展开全部
  1. 口诀:正:全不变 负:除符号位外,各位取反加一    

  2. 求-10的补码,如下:
    1)取-10的绝对值;
    3)对1010取反得1111 1111 1111 0101(这里假定一个整数占16位)
    4)再加1得1111 1111 1111 0110;                    

计算机中的符号数有三种表示方法,即原码、反码和补码。三种表示方法均有符号位和数值位两部分,符号位都是用0表示“正”,用1表示“负”,而数值位,三种表示方法各不相同。

沙里波特
2021-01-28 · TA获得超过5251个赞
知道大有可为答主
回答量:1.1万
采纳率:95%
帮助的人:645万
展开全部

常识:

 正数的补码,是其本身。

 负数的补码,就用正数,减一取反,即可。

 

比如,+10 的补码,就是:0000 1010。

下面求-10 的补码:

 先减一:可得 0000 1001;

 再取反:就是 1111 0110。

这就求出来了。

即:[-10]补 = 1111 0110。

----

在计算机中,只有补码,并没有原码反码。

原码、反码、符号位,求反加一,都是垃圾。

在计算机中,根本就没有这些方法步骤。

另外,-128 根本没有原码反码,拿什么求反加一呢?

----

补码,写成十进制,也是正确的。

那么,按照八位补码的定义式,可以得出:

 如 X ≥ 0 (正数): [ X ]补 = X = 0 ~ 127;

 如 X < 0(负数): [ X ]补 = 模 - | X | = 128 ~ 255。

当 X 的补码大于 127,X 就是负数了。

本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
做而论道
高能答主

2022-05-14 · 把复杂的事情简单说给你听
知道大有可为答主
回答量:3万
采纳率:80%
帮助的人:1.2亿
展开全部

正数的补码,是其本身。

负数的补码,就用它的正数,减一取反,即可得到补码。

如+9 补码是:0000 1001。

下面求-9 补码:

先减一:0000 1001 - 1 = 0000 1000;

再取反:1111 0111。

所以有:-9 补码 = 1111 0111。

这不就完了吗?

简不简单?意不意外?

原码反码符号位,讨论这些垃圾干嘛?

不都是骗人的吗?

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
隆兆闳翠曼
2019-10-01 · TA获得超过3726个赞
知道大有可为答主
回答量:3102
采纳率:27%
帮助的人:243万
展开全部
说简单一些就是先减一然后按位取反,此为一个字节,9转换为二进制就是00001001,减一00001000,按位取反11110111。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
三体迷智子一号B7
高粉答主

2019-12-19 · 每个回答都超有意思的
知道答主
回答量:2.5万
采纳率:1%
帮助的人:1333万
展开全部
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式