为什么计算机以不同方式表示文本与数字?

1 · Johnson Lee · Dec. 19, 2025, midnight
Summary
最近从零开始教儿子学编程,在讲解计算机是如何表示文本和数字的时候,儿子突然冒出了一个问题: 为什么要用不同的方式来表示?数字不也是文本吗? 这样一个看似天真的问题,差点把我给整不会了。 自从大学开始学习 C 语言以来,我们便习以为常的接受「字符串」和「数值」类型,从来没有深入去思考过「为什么」。听到这个问题的时候,我愣了一下,突然意识到我的编程入门是那么的晦涩难懂,为了让儿子更系统性的理解计算机的底层原理,我不得不重构一下整个知识框架。 最小单位 文本的最小单位 为了回答儿子的问题,我没有立刻进入二进制,而是先换了一个角度。 我问他: 如果把数字和文本拆到最小,它们各自剩下什么? 文本的最小单位是 ——「符号」 对于文本来说,最小单位是字符。 ‘A’ 是一个符号 ‘中’ 是一个符号 ‘?’ 也是一个符号 字符本身并不携带“数量”的概念,它只是被人类赋予了某种意义。 计算机所做的,只是把这些符号映射成编号,然后原封不动地存起来。 字符之间不存在天然的数学关系。 数字的最小单位 而数字不一样。 数字的最小单位不是「符号」,而是 ——「值」。 当我们写...