一、常用的进制
- 在日常生活中采用十进制进行数据的描述,逢十进一,十进制权重是:
10^0
、10^1
、10^2
、… - 在计算机的底层采用0和1组成的二进制序列进行数据的描述,逢二进一,
二进制的权重是2^0
、2^1
、2^2
、… - 二进制中的最高位(最左边)用于代表符号位,若该位是0则表示非负数,
若该位是1则表示负数。 - 八进制和十六进制其实都是二进制的简写。
二、进制之间的转换
正十进制转换为二进制的方式
-
除2取余法,使用十进制整数不断地除以2取出余数,直到商为0时将
余数逆序排序。
-
拆分法,将十进制整数拆分为若干个二进制权重的和,有该权重下面
写1,否则写0。(推荐)
正二进制转换为十进制的方式
- 加权法,使用二进制中的每个数字乘以当前位的权重再累加起来。
负十进制转换为二进制的方式
- 先将十进制的绝对值转换为二进制,然后进行按位取反再加1。
负数的需要补码:按位取反,再加1 。
负二进制转换为十进制的方式
- 先减1再按位取反,合并为十进制整数后添加负号。
-
三、单个字节表示的整数范围(重中之重)
- 在计算机中单个字节表示八位二进制位,其中最高位(最左边)代表符号位,使用0代表非负数,使用1代表负数,具体表示的整数范围如下:
非负数表示范围:0000 0000 ~ 0111 1111
=>0 ~ 127
=>0 ~ 2^7-1
负数表示范围:1000 0000 ~ 1111 1111
=>-128 ~ -1
=>-2^7 ~ -2^0
单个字节表示的整数范围是:-2^7 ~ 2^7-1
,也就是-128 ~ 127.