关于二进制负数的绝对值
般情况下,二进制表示负数不会使用补码的,补码只在计算机内部使用。
如果有人说 1000 0001 是负数,意思就是 -1。因此,取绝对值将最高位清0就可以了。
二进制数据是用0和1两个数码来表示的数。它的基数为2,进位规则是“逢二进一”,借位规则是“借一当二”,由18世纪德国数理哲学大师莱布尼兹发现。
扩展资料:
二进制负数采用原因:
(1)技术实现简单,计算机是由逻辑电路组成,逻辑电路通常只有两个状态,开关的接通与断开,这两种状态正好可以用“1”和“0”表示。
(2)简化运算规则:两个二进制数和、积运算组合各有三种,运算规则简单,有利于简化计算机内部结构,提高运算速度。
(3)适合逻辑运算:逻辑代数是逻辑运算的理论依据,二进制只有两个数码,正好与逻辑代数中的“真”和“假”相吻合。
(4)易于进行转换,二进制与十进制数易于互相转换。
(5)用二进制表示数据具有抗干扰能力强,可靠性高等优点。因为每位数据只有高低两个状态,当受到一定程度的干扰时,仍能可靠地分辨出它是高还是低。
那么补码和绝对值的关系是什么?(我都不知道我这个提问对不对,纯粹的小白)
从你的问题来看,1001 0110,并不是二进制“数”。
你这个 1001 0110,应该是“一个数”的补码。
如果你想要求它的绝对值,你应该先求出“这个数”。
--------------------
已知补码是: 1001 0110。
其首位 1,既代表负号,也代表数值-128。
再加上其他数值位,就是真值:
-128 + 16 + 4 + 2 = -106
绝对值,就是:106。
--------------------
如果,补码是:0001 0110,
各位之和,就是真值:
16 + 4 + 2 = +22
绝对值,就是:22。