我们知道十进制数111,可以表示为1*10^0+1*10^1+1*10^2,即可以等于1+10+100。
任何一个n位的十进制数都可以表示为m位的数字(1≤m≤n)与10的m-1次幂的乘积之和。
类似的一个二进制数10010,可以表示为0*2^0+1*2^1+0*2^2+0*2^3+1*2^4,即等于2+16=18(十进制值)。
计算机中表示数值有以下几种形式:
原码表示法(Signed magnitude representation) :
把最高位设置为0,表示正数或者+0,把最高位设置为1,表示负数或者-0,其余二进制位表示数值的绝对值大小。其中最高位被称为符号位。
反码表示法(Ones’ complement):最高位也是符号位,0表示正数,1表示负数,负数是将正数的二进制位取反。对于0有两种不同的表示法,分别是+0(0000 0000)、-0(1111 1111)。
补码表示法(Two’s complement):最高位也是符号位,0表示正数,1表示负数,负数是将正数的二进制位取反后加1。用补码表示法表示0,只有一种形式(0000 0000)。
发表评论