二进制补码:1000000000000000的真值是多少?

 我来答
刺任芹O
2022-11-16 · TA获得超过6.2万个赞
知道顶级答主
回答量:38.7万
采纳率:99%
帮助的人:9021万
展开全部

二进制补码:1000000000000000的真值,如果是定点小数的二进制补码,则为-1,如果是定点整数的二进制补码,则为-32768。

数有字长规定。如果是 4 字节整型, 最高位是符号位。正数的源码,反码,补码 是一样的。

负数才分 原码,反码,补码。计算机为了充分利用 内存能表达的 数据点,假定正0负0一样。数据具体范围 在 编译器 头文件 limits.h 中 有明确 规定。

 INT_MAX,INT_MIN。也可以打印出来看。int a=0x8000;printf("%d %u %x\n",a,a,a )。

扩展资料

[+0]原码=0000 0000,   [-0]原码=1000 0000。

[+0]反码=0000 0000,   [-0]反码=1111 1111。

[+0]补码=0000 0000,   [-0]补码=0000 0000   。

+0和-0的补码是一样的。即 0的补码只有一种表示。

这里解释一下[-0]补码是怎么得来的。

负数的补码就是反码整体加一。符号位上的进位舍弃。(所以,舍弃了符号位的补码的第一位是数值位,不是符号位,符号位舍弃了)

另外解释一下原码符号位和补码符号位的关系,补码的符号位不是保持原码的第一位不变,而是 符号位不变,[-0]反码的第一个1是符号位,尾数中的7个1是数值位,尾数加一后。

数值位产生了进位,1111 1111+1=1 0000 0000(计算补码的过程中,并不是先保证第一位不变,而是保证符号位不变,保证补码规则是反码整体加一)。

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式