进制转换
- 二进制数:由前缀0b开头,前缀可省略。只有0和1组成
- 十进制数:由1-9开头,0-9组成
- 八进制数:由前缀0以及后续的0-7的数字来表示
- 十六进制数:由前缀0x,后面跟随0-9或大/小写的a-f来表示(a-f依次表示10-15)
数学进制转换
十进制 => 二进制
十进制数除2取余法,即十进制数除2,余数为权位上的数,得到的商值继续除2,依此步骤继续向下运算直到商为0为止。
十进制 | 160 | 80 | 40 | 20 | 10 | 5 | 2 | 1 | 0 |
---|---|---|---|---|---|---|---|---|---|
除2取余 | 0 | 0 | 0 | 0 | 0 | 1 | 0 | 1 | 0 |
倒序后:
- 十进制160 的二进制:10100000
- 十进制80 的二进制:1010000
- 十进制40 的二进制:101000
二进制 => 十进制
把二进制数按权展开、相加即得十进制数。
二进制 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
---|---|---|---|---|---|---|---|---|
按权展开 | 1 × \times × 27 | 0 × \times × 26 | 1 × \times × 25 | 0 × \times × 24 | 0 × \times × 23 | 0 × \times × 22 | 0 × \times × 21 | 0 × \times × 20 |
计算 | 128 | 0 | 32 | 0 | 0 | 0 | 0 | 0 |
相加后:
- 二进制10100000 的十进制 :128 + 32 = 160
- 二进制 100000 的十进制:32
二进制 => 八进制
从右向左,每3位二进制数按权展开相加得到1位八进制数
二进制 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 |
---|---|---|---|---|---|---|---|---|
按权展开 | 1 × 27 | 0 × 26 | 1 × 25 | 0 × 24 | 0 × 23 | 0 × 22 | 0 × 2 |