软考备考笔记(一):进制转换

5 阅读2分钟

第一课:进制转换

先搞清楚什么是"进制"

进制就是逢几进一

进制用哪些数字逢几进一生活例子
十进制0~9逢10进1日常计数
二进制0、1逢2进1计算机底层
八进制0~7逢8进1考试常考
十六进制0-9、A-F逢16进1Java 中 0x 前缀

其中十六进制里:A=10, B=11, C=12, D=13, E=14, F=15


考试只考两类转换

第一类:其他进制 → 十进制

方法:按权展开,逐位相乘,再求和

举个例子,把二进制 11010 转成十进制:

从右往左,每一位乘以 2 的 n 次方(n 从 0 开始)

  1      1      0      1      0
×2⁴    ×2³    ×2²    ×2¹    ×2⁰
= 16  +  8   +  0   +  2   +  0
= 26

所以 二进制 11010 = 十进制 26

换成十六进制也一样,比如 2AF

  2       A(10)    F(15)
×16²    ×16¹     ×16⁰
= 512  +  160   +  15
= 687

所以 十六进制 2AF = 十进制 687


第二类:十进制 → 其他进制

方法:除以进制基数,倒取余数

比如把十进制 156 转成二进制:

156 ÷ 2 = 780
 78 ÷ 2 = 390
 39 ÷ 2 = 191
 19 ÷ 2 = 91
  9 ÷ 2 = 41
  4 ÷ 2 = 20
  2 ÷ 2 = 10
  1 ÷ 2 = 01

从下往上读余数:10011100

所以 十进制 156 = 二进制 10011100


快捷技巧:二进制 ↔ 十六进制

考试最常考这个,因为4 位二进制 = 1 位十六进制,可以直接对照:

二进制 1001 1100
           
十六进制  9    C

所以 10011100 = 9C

反过来也行:十六进制 3F = 二进制 0011 1111


练习

第 1 题: 把二进制 10110 转成十进制

第 2 题: 把十进制 200 转成二进制

第 3 题: 把十六进制 1A3 转成十进制