1. 补码与负数的二进制表示
1.1 补码的基本概念
补码是计算机中表示有符号整数的一种方式。在8位系统中,最高位(第7位)作为符号位,0表示正数,1表示负数。正数的补码就是其二进制形式,而负数的补码则需要通过特定转换得到。
补码表示法的优势在于:
- 统一了加减法运算
- 解决了0的表示唯一性问题
- 扩展了可表示的数值范围
1.2 负数补码的计算步骤
以题目中的-15为例,计算其8位补码的具体过程:
-
先得到15的二进制表示:
- 15 ÷ 2 = 7 余1
- 7 ÷ 2 = 3 余1
- 3 ÷ 2 = 1 余1
- 1 ÷ 2 = 0 余1
- 从下往上读取余数:1111
- 8位表示:00001111
-
对二进制数取反(0变1,1变0):
- 00001111 → 11110000
-
对取反后的结果加1:
- 11110000 + 1 = 11110001
注意:在补码计算过程中,取反操作不包括符号位。但在8位系统中,所有位都参与取反。
1.3 补码的验证方法
为了验证11110001确实是-15的补码,我们可以进行反向计算:
- 补码:11110001
- 取反:00001110
- 加1:00001111(15)
- 加上负号:-15
这个验证过程证明了我们的计算是正确的。
需要模型API调用? 免费领10W Token,多模型网关一键接入 Claude、DeepSeek 等主流模型。
2. 三进制与十进制转换
2.1 三进制数制基础
三进制是一种基数为3的计数系统,使用数字0、1、2表示数值。与二进制类似,三进制的每一位代表3的幂次方。
三进制的位权值:
- 第0位:3⁰ = 1
- 第1位:3¹ = 3
- 第2位:3² = 9
- 第3位:3³ = 27
- 以此类推...
2.2 三进制转十进制实例
以题目中的三进制数212为例,转换过程如下:
-
分解各位数字:
- 2(第2位)
- 1(第1位)
- 2(第0位)
-
计算各位的十进制值:
- 2 × 3² = 2 × 9 = 18
- 1 × 3¹ = 1 × 3 = 3
- 2 × 3⁰ = 2 × 1 = 2
-
求和:
- 18 + 3 + 2 = 23
常见错误:容易混淆位
