二进制值:
半字节中各位的位值 字节中各位的位值
8 4 2 1 128 64 32 16 8 4 2 1
二进制到十进制转换表:
二进制值 十进制值
10000000 128
11000000 192
11100000 224
11110000 240
11111000 248
11111100 252
11111110 254
11111111 255
11111111若要计算字节对应的十进制值,可将所有取值为1 的位的位值相加,如下所示:
128 + 64 + 32 + 16 + 8 + 4 + 2 + 1 = 255 ,这是字节的最大可能取值。
二进制数还可对应众多其他的十进制值,下面来看一些例子。假设二进制数取值如下:
10010110
哪些位的取值为1 呢?答案是位值为128 、16 、4 和2 的位,因此只需将这些位值相加: 128+ 16+4+
2= 150。
再举个例子,假设二进制数取值如下:
01101100
哪些位的取值为1 呢?答案是位值为64 、32 、8 和4 的位,因此只需将这些位值相加: 64+32+8+4=
108。再者,如果二进制数取值如下:
11101000
哪些位的取值为1 呢?答案是位值为128 、64、32 和8 的位,因此只需将这些位值相加: 128+64+32+
8=232 。
二进制转十六进制:
十六进制只能使用数字0-9 ,而不能使用10 、11 、12 等(因为它们是二位数),因此使用A 、B 、C、D 、E 和F 分别表示10 、11 、12 、13 、14 和15 。
每个十六进制字符相当于半字节,而两个十六进制字符相当于一字节。假设有十六进制数Ox6A,
要计算该十六进制数对应的二进制值,可将这两个字符分别转换为半字节,然后将它们合并为一个字节:6=0110 ,而A= 1010 ,因此整个字节为01101010,64+32+8+2=108.
假设有二进制数01010101 。首先将其划分为半字节0101 和0101 ,这些半字节的值都是5 ,因为
取值为1 的位对应的位值分别是1 和4。因此,其十六进制表示为Ox55 。要将二进制数01010101 转换
为十进制数,方法为64 + 16 + 4 + 1 = 85 。
另一个二进制数11001100其中1100=12 , 1100= 12 ,因此它对应的十六进制数为cc。将其转换为十进制时,答案为128+64+8 +4 =204.