上传者: yj1990823822
|
上传时间: 2025-10-12 11:21:51
|
文件大小: 962KB
|
文件类型: PDF
### 知识点总结
#### 一、数制与编码转换
**1.1 数制间的转换**
- **二进制转十进制**: 通过将每个二进制位乘以其权重并求和来实现。例如,对于二进制数`1011001`,其十进制值为\(1\times2^6 + 0\times2^5 + 1\times2^4 + 1\times2^3 + 0\times2^2 + 0\times2^1 + 1\times2^0 = 89\)。
- **二进制转八进制**: 每三个二进制位转换为一个八进制位。例如,对于`1011001`,先填充零成为`010 110 01`,然后转换为`261`。
- **二进制转十六进制**: 每四个二进制位转换为一个十六进制位。例如,对于`1011001`,先填充零成为`0010 1100 1`,然后转换为`59`。
**1.2 十进制转其他进制**
- **十进制转二进制**: 使用除2取余法,直到商为0。例如,对于`76`,转换过程为\(76÷2=38\)余0,\(38÷2=19\)余0,\(19÷2=9\)余1,\(9÷2=4\)余1,\(4÷2=2\)余0,\(2÷2=1\)余0,最后得到二进制为`1001100`。
- **十进制转八进制**: 使用除8取余法,直到商为0。例如,对于`76`,转换过程为\(76÷8=9\)余4,\(9÷8=1\)余1,最后得到八进制为`114`。
- **十进制转十六进制**: 使用除16取余法,直到商为0。例如,对于`76`,转换过程为\(76÷16=4\)余12(C),最后得到十六进制为`4C`。
**1.3 小数部分转换**
- **十进制转二进制**: 使用乘2取整法,直到小数部分为0或达到所需精度。例如,对于`0.57`,转换过程为\(0.57×2=1.14\)取1,\(0.14×2=0.28\)取0,\(0.28×2=0.56\)取0,\(0.56×2=1.12\)取1,最后得到二进制为`0.1001`。
#### 二、十六进制与二进制之间的转换
**1.5 十六进制转二进制**
- 每个十六进制位对应四位二进制位。例如,对于`10A`,转换过程为`1010`对应于A,`0001`对应于1,最后得到二进制为`100001010`。
#### 三、二进制运算
**1.6 二进制加减法**
- **加法**: 与十进制加法类似,但遵循二进制规则。例如,对于`0101.01 + 1001.11`,按照二进制加法规则计算得到结果为`1111.00`。
- **减法**: 也可以使用补码运算来进行。例如,对于`1011.1 - 101.11`,可以通过补码转换进行计算,最终得到的结果为`101.11`。
**1.7 二进制运算示例**
- **加法运算**: 对于`36.5 + 28.625`,先将十进制数转换为二进制,然后相加,结果为`1000001.001`。
- **减法运算**: 对于`116 - 78`,先将十进制数转换为二进制,然后相减,结果为`100110`。
#### 四、格雷码与自然二进制之间的转换
**1.9 自然二进制转格雷码**
- **转换规则**: 除了第一个位外,每个位等于它前面的位加上当前位(按异或操作)。例如,对于`011010`,转换为格雷码为`010111`。
**1.10 格雷码转自然二进制**
- **转换规则**: 相反地,从第一位开始,每个位等于前一位加上当前位(按异或操作)。例如,对于`001101`,转换为自然二进制为`001001`。
#### 五、二进制码
**1.11 二进制码**
- **原码**: 符号位在最左边,数值位保持不变。例如,对于`+48`,原码为`00110000`。
- **反码**: 正数的反码与原码相同;负数的反码是正数的反码按位取反后,符号位保持不变。例如,对于`-96`,原码为`11100000`,反码为`10011111`。
- **补码**: 正数的补码与原码相同;负数的补码是在其反码的基础上加1。例如,对于`-36`,原码为`10100100`,反码为`11011011`,补码为`11011100`。
**1.12 反码和补码运算**
- **运算**: 使用补码进行加减法运算更为方便。例如,对于`33 - 17`,首先将`17`转换为补码,然后进行加法运算,结果为`16`。
#### 六、BCD码
**1.13 BCD码表示**
- **8421BCD码**: 每个十进制位由四位二进制位表示,且对应于该位的十进制值。例如,对于`378.625`,转换为8421BCD码为`001101111000.011000100101`。
- **余三码**: 是一种BCD码变体,每个代码比相应的8421BCD码大3。例如,对于`378.625`,转换为余三码为`011010101011.100101011000`。
**1.14 8421BCD码转二进制**
- **转换**: 将每个四位的8421BCD码转换为其对应的十进制数,然后再转换为二进制数。例如,对于`10010101`,转换为十进制数为`95`,再转换为二进制数为`01011111`。