一.进位计数制
1.二进制数
a n a n − 1 . . . a 0 b 1 b 2 . . . b m = a n ∗ 1 0 n + a n − 1 ∗ 1 0 n − 1 + . . . + a 0 ∗ 1 0 0 + b 1 ∗ 1 0 − 1 . . . a_na_{n-1}...a_0b_1b_2...b_m=a_n*10^n+a_{n-1}*10^{n-1}+...+a_0*10^0+b_1*10^{-1}... anan−1...a0b1b2...bm=an∗10n+an−1∗10n−1+...+a0∗100+b1∗10−1...
其中每位数字 1 0 k 10^k 10k称为该数字的权
几种常用进位计数制的基数和数码
进位计数制 | 基数 | 数码 |
---|---|---|
十六进制数 | 16 | 0,1,2…C,D,F |
十进制数 | 10 | 0,1,2…8,9 |
八进制数 | 8 | 0,1,2,3,4,5,6,7 |
二进制数 | 2 | 0,1 |
不同进制表示方法—添加后缀
十进制–D
二进制–B
八进制–O
十六进制–H
2.十进制与二进制的转换
2.1 二进制转十进制
直接使用加权和即可
2.2 十进制转换为二进制
降幂法
从直接小于目标数的最大二进制权值依次列出
如 N = 117 D N=117D N=117D,
64 | 32 | 16 | 8 | 4 | 2 | 1 |
---|---|---|---|---|---|---|
1 | 1 | 1 | 0 | 1 | 0 | 1 |
N = 0.8125 D N=0.8125D N=0.8125D
0.5 | 0.25 | 0.125 | 0.0625 |
---|---|---|---|
1 | 1 | 0 | 1 |
除法
N = 117 D N=117D N=117D
过程:
117 / 2 = 58 ( a 0 = 1 ) 117/2=58 (a_0=1) 117/2=58(a0=1)
58 / 2 = 29 ( a 1 = 0 ) 58/2=29 (a_1=0) 58/2=29(a1=0)
29 / 2 = 14 ( a 2 = 1 ) 29/2=14 (a_2=1) 29/2=14(a2=1)
14 / 2 = 7 ( a 3 = 0 ) 14/2=7(a_3=0) 14/2=7(a3=0)
7 / 2 = 3 ( a 4 = 1 ) 7/2=3(a_4=1) 7/2=3(a4=1)
3 / 2 = 1 ( a 5 = 1 ) 3/2=1(a_5=1) 3/2=1(a5=1)
1 / 2 = 0 ( a 6 = 1 ) 1/2=0(a_6=1) 1/2=0(a6=1)
由下往上开始记录
所以 N = 117 D = 1110101 B N=117D=1110101B N=117D=1110101B
其余进制转换也类似
计算机中数和字符的表示
补码表示法
正数:不改变
负数: 2 n − ∣ X ∣ 2^n-|X| 2n−∣X∣,其中n表示机器字长
先写出与该负数相对应的正数,然后按位求反,最后在末位+1即可
补码的计算
[ X ] 补 ⟹ [ − X ] 补 ⟹ [ X ] 补 [X]_补\Longrightarrow[-X]_补\Longrightarrow[X]_补 [X]补⟹[−X]补⟹[X]补
则对应加减法来说
[ X + Y ] 补 = [ X ] 补 + [ Y ] 补 [X+Y]_补=[X]_补+[Y]_补 [X+Y]补=[X]补+[Y]补
[ X − Y ] 补 = [ X ] 补 + [ − Y ] 补 [X-Y]_补=[X]_补+[-Y]_补 [X−Y]补=[X]补+[−Y]补
几种基本逻辑运算
与,或,非,异或运算