**模拟(analogue)**量连续变化,在一个范围内可以取任何值,例如温度、声音或光。**数字(digital)**表示则把这个量存成由位(bit)组成的数字,因此只能取一组固定的值。考试会要你指出哪个是哪个,并说明转换过程。
这是硬件、软件与系统单元的最后一课,与输入输出流程中的传感器阶段相连。
现实中的量如何变成数字数据?
- 传感器测量真实的量,产生连续变化的信号。
- **模拟数字转换器(ADC)**在固定的时间点测量这个信号,并把每次测量值四舍五入到最接近的可用步数。
- 计算机存储并处理得到的二进制数。
- 如果要控制现实世界中的东西,例如扬声器,**数字模拟转换器(DAC)**会把数字变回连续变化的信号。
用 n 位时有 2n 个步数。8 位就是 28 = 256 步,编号 0 到 255。
例题
教室里的传感器测量 0 °C 到 50 °C 的温度,使用 8 位转换器(虚构的简化设置)。读数是 28.4 °C。
存储的数字是什么?转换回来代表什么?
第 1 步,可用步数: 256 个值,从 0 到 255。
第 2 步,比例: 255 步涵盖 50 °C,所以 1 °C 是 255 ÷ 50 = 5.1 步。
第 3 步,转换: 28.4 × 5.1 = 144.84。四舍五入到最近的整数步:145。用二进制存储:10010001。
第 4 步,转换回来: 145 × 50 ÷ 255 = 28.43…… °C。
第 5 步,比较: 存储的值代表 28.43 °C,而不是恰好 28.4。这个小差别是步数有限造成的四舍五入。
检查二进制:128 + 16 + 1 = 145。正确。
学生常犯什么错?
常见的失误是因为计算机以数字显示,就说这个量本身是数字的。
错误答案: “温度是数字的,因为屏幕显示 28.4。”
屏幕显示的是存储的数字。房间里的温度仍然是模拟的,连续变化。
纠正的方法是把两件事分开:真实的量(模拟)与它存储的数字(数字)。
自我检测
1. 说出下列各项是模拟还是数字:房间里一个人说话的响度、内存中存储的数字 0110。
显示答案
说话的响度是模拟的。存储的 0110 是数字的。
2. 4 位转换器可以产生多少个不同的值?
显示答案
24 = 16 个值。
3. 为什么例题中存储的读数与 28.4 °C 稍有不同?
显示答案
转换器把值四舍五入到有限步数中最接近的一步,所以存储的那一步代表一个接近但不恰好是 28.4 °C 的值。
接下来学什么?
你现在已经学完整个单元。请在综合练习中测试所有内容,并试试实操任务与证据检查器,了解情境作业如何被检查。
如果二进制转换或转换器的概念仍然不稳,我们的老师可以在线上一对一 ICT 补习中放慢速度带你理解。