数值转化
用低/高电平表示0/1
进制符号表示,2进制为后缀B,10进制为后缀D,16进制为前缀0x
R进制转10进制
10进制转R进制
将对应的数字除R取余。剩下的数字继续操作。余数从下到上为高到低。
例:94的二进制为1011110
用除 2 取余法(从下往上读余数):
94 ÷ 2 = 47 … 0
47 ÷ 2 = 23 … 1
23 ÷ 2 = 11 … 1
11 ÷ 2 = 5 … 1
5 ÷ 2 = 2 … 1
2 ÷ 2 = 1 … 0
1 ÷ 2 = 0 … 1
从下往上读余数:1011110。
2进制转16进制
4位一组,每组转为16进制。小数点处隔开以小数点近处为起点向两边进行分组,空缺补零。
例:2进制1111000010.01101转为16进制
十六进制每 1 位对应二进制的 4 位,所以将整数部分和小数部分分别按 4 位一组分组,不足 4 位时补 0。
- 整数部分:1111000010
从右向左 4 位一组(最左边不足 4 位时前面补 0):
先写出整数部分二进制:1111000010
分组:
11 1100 0010 → 补成 4 位一组:
(0011) (1100) (0010)
0011₂ = 3₁₆
1100₂ = C₁₆
0010₂ = 2₁₆
整数部分 → 3C2 - 小数部分:0.01101
从左向右 4 位一组(不足 4 位时末尾补 0):
小数部分二进制:01101
分组:
0110 1 → 补 0:0110 1000
0110₂ = 6₁₆
1000₂ = 8₁₆
小数部分 → 0.68 - 合并结果
1111000010.01101₂ = 3C2.68₁₆