原码、反码及补码 30

Givennbitsa.Howmanyintegerscanberepresentedusing2’scomplementwiththenbits?b.Howmanyin... Given n bits
a. How many integers can be represented using 2’s complement with the n bits?
b. How many integers can be represented using 1’s complement with the n bits?
c. How many unsigned integers can be represented with the n bits?
答案是2n;2n-1 ;2n么?
知道的回答下 谢谢了!
展开
 我来答
沙里波特
2022-01-12 · TA获得超过5238个赞
知道大有可为答主
回答量:1.1万
采纳率:100%
帮助的人:605万
展开全部

Given n bits

a. How many integers can be represented using 2’s complement with the n bits?

b. How many integers can be represented using 1’s complement with the n bits?

c. How many unsigned integers can be represented with the n bits?


a. n 位补码,可以表示多少个整数?  2^n 个。

b. n 位反码,可以表示多少个整数?  2^n-1 个。

c. n 个位,可表示多少无符号整数?  2^n 个。

 

正负数,在计算机中,只是用【补码】来存储。

而原码和反码,在计算机中,并不存在。

下面按照八位二进制来说明补码的意义。

十进制数 0,存放形式,就是二进制 0000 0000。

十进制数 +1,就加上 1,二进制是 0000 0001。

十进制数 +2,就再加 1,二进制是 0000 0010。

。。。

十进制数 +127,加 1加 1...,就加到了 0111 1111。

+127,这就是最大数值。

----------

负数怎么办? 你就从 0,依次递减吧。

十进制数 0,以二进制 0000 0000 存放。

十进制数 -1,就减去 1,得 1111 1111 = 255(十进制)。

十进制数 -2,就再减 1,得 1111 1110 = 254。

十进制数 -3,就再减 1,得 1111 1101 = 253。

。。。

十进制数 -128,减 1减 1...,得 1000 0000 = 128。

不要再减了,这就是最小值了。

(你再继续减,就是 0111 1111,这就是+127 了。)

因此,最小数值就是-128。

----------

总结:

  零和正数:直接用二进制存放。

  负数:存放形式是【256+这个负数】。

这套存放格式,就是所谓的【补码】。

 

求【补码】,就是这么简单。

完全不用绕到“原码反码符号位”那么远。

可以用十进制来计算。如果需要二进制,你就再转换一下。

用这个方法,不涉及原码反码符号位,就少了不少麻烦事。

----------

为什么负数用补码存储?

 利用补码,可以把减法运算,转换成加法。

 (所以,在计算机中,有一个加法器,就够用了。)

例如,6-2 = 4,在计算机中,用补码代替数字,运算如下:

    6 的补码是 0000 0110

 + -2 的补码是 1111 1110

-----------------

       (1) 0000 0100   (= 4 的补码)

 (括号中的 1,是进位,舍弃不要了。)

注意:

 如果运算结果超出了-128~+127 的范围,结果将是错的。

 这种现象称为“溢出”。

 再注意一下:进位,并不等于溢出。

---------

因为补码的这个特性,所以,在计算机中,只是使用补码存放数据。

而原码反码,在计算机中,都是不存在的。

所以,大家,完全不必在原码反码上浪费时间精力。

意法半导体(中国)投资有限公司
2023-06-12 广告
STM32F103C8T6是一款基于ARM Cortex-M3内核的微控制器,具有以下基本参数:1. 工作频率:72MHz2. 外部时钟:最高可达120MHz3. 存储器容量:64K bytes4. 数据总线宽度:32位5. 输入/输出端口... 点击进入详情页
本回答由意法半导体(中国)投资有限公司提供
114479505
2011-01-26 · 贡献了超过270个回答
知道答主
回答量:270
采纳率:0%
帮助的人:68.9万
展开全部
31
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

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

类别

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

说明

0/200

提交
取消

辅 助

模 式