5位两个二进制补码相加运算-10+15出现问题

拍照搜题秒出答案,一键查看所有搜题记录

拍照搜题秒出答案,一键查看所有搜题记录

两个补码相加,如果符号位有进位,则舍去进位,假如机器位数为8,请举例说明.

拍照搜題秒出答案,一键查看所有搜题记录

拍照搜题秒出答案,一键查看所有搜题记录

拍照搜题秒出答案,一键查看所有搜题记录

对于无符号数而言没有e69da5e887aa什么原碼、反码、补码的概念,只有绝对值

对于带符号数,才会有采用什么码型来表示的问题确实是-128的补码。对于带符号数最高位是符号位,0表示正数、1表示负数始终不变。所有的码型换算都只针对低位的绝对值部分进行。

例如12的原码是-12的原码是。对其绝对值部分0001100求反加1得1110100最高位添上符号位1,就是补码

所以码型转换运算只针对绝对值部分,不针对符号位符号位始终不变。

负数的补码就是对反码加1,而正数不变,正数的原码反码补码是一样的

1、补码的得来:是为了让负数变成能够加的正数,所以负数的补码=模-负数的绝对值:比如:-1 补码:00 0001,也就是-1的绝对值取反加1得来)当一个数要减1的时候,可以直接加

2、原码的得来:(负数的原码,直接把对应正数的最高位改为1)原码能够直观的表示一个负数(能直观的把真值显示出来如 -1为其中最高位表示符号位,不进行算术计算)

3、反码和补码之间转换:补码= 反码+1

4、现在来推-128的补码:-128的补码: - (+128没有符号位)=

-128的原码:(反码取反)

往回推:-128的原码 (-128,进位被舍去)、-128的反码

-128的补码 11 1111(反码) + 1=,这里实际上真正相加的是、后面的7位,第1位是符号位始终不会变。

所以当进到第8位的时候,就表示溢出了,会被舍弃)。

5、 0只有一个补码(听说可以证明的),如果昰这样,那么就不会表示成-0的补码即:补码唯一的表示-128。

我要回帖

更多关于 两个二进制补码相加 的文章

 

随机推荐