-128用原码补码是多少?
-128的8位的话原码和反码都无法表示, 补码是10000000。
这个属于特殊情况,需要自己记住。
扩展资料
在计算机内,有符号数有3种表示法:原码、反码和补码。
原码:在数值前直接加一符号位的表示法。
符号位 数值位 [+7]原= 0 0000111 B[-7]原= 1 0000111 B
反码:正数:正数的反码与原码相同。负数:负数的反码,符号位为"1",数值部分按位取反。
例如: 符号位 数值位
[+7]反= 0 0000111 B
[-7]反= 1 1111000 B
补码的表示:
正数:正数的补码和原码相同。
负数:负数的补码则是符号位为"1"。并且,这个"1"既是符号位,也是数值位。数值部分按位取反后再在末位(最低位)加1。也就是"反码+1"。
参考资料
2022-05-15 广告
在码长 8 位时,原码和反码的表示范围都是:-127 ~ +127。
都不能表示-128。
所以,-128 并没有八位的原码和反码。
那么,用“取反加一”求补码,在这就“Duang”的碰壁了。
求-128 的补码,就必须得使用“补码定义式”:
[-128 ]补码 = -128 + 2^8
= 128
= 1000 0000 (二进制)。
-----------------------
用定义式来求补码,是通用的方法。
学习“符号位01原码反码取反加一符号位不变”,
不但求不出-128 的补码,而且,也不会理解补码的意义。
那么,为什么各本计算机的教材,都要介绍这一滩垃圾呢?
讲这些,可以增加计算机老师的收入。