计算机基础 / 数字与编码
可离线学习
一堂可以动手的进制入门课

进制并不难,
把数字拆开看。

同一个数量,只是换一种写法。
从几个小开关出发,一起弄懂二进制、十进制和八进制。

无需基础每一步都有解释答错也能学会
先玩一个小实验LIVE LAB

这 8 个开关,能表示多少?

点亮代表 1,熄灭代表 0。把点亮的位权加起来。

二进制 · 只用 0 和 1
=
十进制 · 我们熟悉的写法
试试看
每向左一位,开关代表的数量就翻一倍。1 → 2 → 4 → 8 …
↔数量不变,写法改变。就像同一段距离,可以说 1 米,也可以说 100 厘米。(15)10 = (1111)2
01 / 打好地基

“几进制”,就是“逢几进一”。

十进制里,9 再加 1 就要进位。把这个规则里的“10”换成“2”或“8”,就是另一种进制。

① 看看进位是怎么发生的
现在有 件物品
② 数字的位置,决定它值多少

十进制的 253 为什么是二百五十三?

2百位 ×100
5十位 ×10
3个位 ×1

2 × 100 + 5 × 10 + 3 × 1 = 253

二进制也一样,只是“个位、十位、百位”换成了 1、2、4、8、16…。这些位置对应的数叫位权。

位权从右往左:b⁰、b¹、b²…;最右边永远是 b⁰ = 1,不是 0。

02二进制可用数码 0、1逢二进一 · 1 + 1 = (10)₂
08八进制可用数码 0~7逢八进一 · 7 + 1 = (10)₈
10十进制可用数码 0~9逢十进一 · 9 + 1 = (10)₁₀
16十六进制可用数码 0~9、A~FA=10,B=11,…,F=15
为什么 (10)₂ 不是“十”?下标到底怎么看?

括号右下角的数告诉你采用哪一种进制。(10)₂ = 1 × 2 + 0 × 1 = (2)₁₀,读作“二进制的一零”,而不是十进制的“十”。同样,(10)₈ 是十进制的 8,(10)₁₆ 是十进制的 16。二进制只能用两种数码,但可以有很多位,比如 11011101 有 8 位。

02 / 动手验证

转换实验台.

输入一个数,看看每一步为什么这样算。先猜答案,再用实验台验证。

你想转换哪个数?

支持最多 64 位非负整数,十六进制字母大小写均可。小数与负数不在本实验台范围内。

跟着原题试
一步一步,答案就出来了
整数转换会了,小数怎么办?

本页主要练习图片中的非负整数。小数的位权向右依次是 b⁻¹、b⁻²…,例如 (0.101)₂ = 1/2 + 0/4 + 1/8 = (0.625)₁₀。十进制小数转二进制可用“乘 2 取整”,按产生顺序读整数部分;有些小数(如十进制 0.1)会无限循环,不能用有限位二进制精确写出。

03 / 回到你的课后练习

图片里的题,一起解。

已整理图片中的第 9—15 题。先选一个答案,再展开讲解:知道为什么,比记住选项更有用。

知识边界

图片里的“国标码、机内码、字形码”按传统 GB2312 教材语境讲解。现代软件还广泛使用 Unicode / UTF-8,不要把传统机内码规则套用到所有编码。

04 / 理解之后,算得更快

带走这几招,就够用了。

01

转成十进制:
把位权加起来

从右到左标上 1、2、4、8…,只加数字为 1 的位权。

(1101)₂
8 + 4 + 1 = 13
二、八、十六进制都适用:数码 × 位权,再求和。
02

十进制转二进制:
找最大的 2 的幂

例如 15:先取 8,剩 7;再取 4、2、1。取到的位置写 1。

15 = 8 + 4 + 2 + 1
所以是 (1111)₂
通用方法是“除基取余,倒序读取”。可在实验台查看。
03

二进制 ↔ 八 / 十六:
分组,比除法更快

因为 8 = 2³、16 = 2⁴,所以 3 位二进制 ↔ 1 位八进制,4 位 ↔ 1 位十六进制。

110 101 → 6 5
(110101)₂ = (65)₈
整数从右往左分,不够只在最左边补 0。反向转换时每位展开成 3 / 4 位。
再送你两个观察法

看末位,判断奇偶:二进制末位是 0 就是偶数,末位是 1 就是奇数。

看全 1,快速心算:n 位全 1 的二进制数 = 2ⁿ − 1。例如 1111₂ = 16 − 1 = 15。

注意位数:把二进制整数末尾补一个 0,相当于乘 2;开头补 0,数值不变。

随手查 · 常用数值对照 0–15
十进制二进制八进制十六进制
随手查 / 字符也是数字

ASCII 编码对照表。

每个字符都有一个数字编号。例如大写 A 的编号是 65,写成二进制是 1000001,写成十六进制是 41。下面直接查,不用跳转到其他网站。

数字字符 '0'~'9' → 48~57大写字母 A~Z → 65~90小写字母 a~z → 97~122对应大小写相差 32

字母区分大小写;纯数字按十进制查询。0x41 / 0b1000001 / 0o101 可按其他进制查询;查数字字符请写 '0'。

左右滑动查看各进制,字符列会固定在左侧;上下滑动查看更多字符。

标准 ASCII 编码 0 到 127,包含字符、四种进制码值、名称和分类
字符 / 缩写十进制二进制 · 7 位八进制十六进制名称 / 作用分类
回到第 15 题,点一下查:
分清这两件事

字符 '0' 的编号是 48,不是数值 0;空格 SP(32)也不同于空字符 NUL(0)。标准 ASCII 使用 7 位,共 128 个编码;若用 8 位展示,只需在左侧补 0,如 A → 01000001。0~31 和 127 是控制字符,表中用缩写显示,不直接执行控制动作。128~255 不属于这张标准 ASCII 表。参考:RFC 20 ↗

05 / 举一反三

这一次,让你来。

已掌握 0 题

每道题都可以先看提示。做错后改一改,学会才是终点。

原始课后练习来自文件夹中的「进制.jpg」
课后练习原图,包含第9至15题,题目全文已转录在网页中在新窗口打开高清原图 ↗