学径 LearnPath

CAICP-E · 数学基础 / Wiki

编码

按约定规则,把文字或数字换成另一种写法,也能按同一规则换回来。

它是什么

编码是按规定替换。解码是按同一规定的反方向换回来。

不懂规则的人,只看见数字、点划或乱码;懂规则的人,看见原来的意思。

班级暗号:1 表示操,2 表示早,4 表示结束。收到 2-1-4,就读成「早操结束」。没有这张表,2-1-4 只是三个数字。

所以编码不是猜谜。它是严格执行一张表,或一条变换规则。编码和解码成对出现;少了反向,发出去的人就收不回来。

名字从哪来

人很早就把话换成别的符号,方便传得更远、更保密。

摩尔斯电码用点和划代表字母。电报时代,滴滴答答就能把消息送到很远的地方。SOS 是三个点、三个划、三个点,现在很多人仍认识。

凯撒密码据说罗马的凯撒用过。字母在字母表上往后挪几位:A 变成 B,C 变成 D,CAT 变成 DBU。这是一种移位编码。

电脑内部也给字母编号。常见的一种约定里,大写 A 是 65,B 是 66,C 是 67。这叫 ASCII,读音可以记成「阿斯克」。你不必背整张表,先记住一句:电脑也给字母编号,才能存储和传送文字。

它怎么工作

规则必须先说清楚,中途不许换规则。否则发出去的人和解的人会对不上。

两种常见规则:

往后移几位。 A 变成 B,Z 怎么办?常常规定绕回 A。这和钟表从 12 回到 1 一样。题干怎么说,你就怎么做。

用序号代表字母。 A 是 1,B 是 2,C 是 3。CAB 变成 3-1-2。解码就查表:3-1-2 回到 C、A、B。

解码是编码的反向。编码往后移 1 位,解码就往前移 1 位。DBU 回到 CAT。

做完以后,最好再正向编一次,看能否回到密文。方向反了,是最常见的错。

可以在草稿纸上先写字母表,再移动,避免跳格。Z 往后移 1 位接 A,A 往前移 1 位接 Z。

生活里在哪里

  • 学号、座位号、快递单号
  • 交通灯:红停、绿灯行
  • 斑马线的黑白相间
  • 手机里的拼音输入:按键变成汉字
  • 二维码:黑白格子里藏着网址或文字
  • 乐谱:把声音写成音符

规律常常和编码一起出现。编码规则是人约定的;规律是序列自己反复出现的。先会「照表换」,再去「找规律」,不容易混。

按步骤替换,本身也是一种 顺序流程:先对准规则,再逐个换,最后检查能否换回来。

和相近概念的差别

名称关键差别
编码规则事先约定,按表替换
规律规则藏在序列里,要你发现
特征描述事物的性质,不是换写法
方程求藏起来的数,不是换字母

看到题干里的对照表,就走编码这条路。看到 2、4、6、8,走规律。

编码改变的是「怎么写」,意思应当还能还原。如果换完再也回不去,那就不是完整的编码。

常见误会

误会 1:编码中途改规则。

前三个字母移 1 位,后两个移 2 位,对方解不开。

误会 2:解码方向弄反。

往后编的,要往前解。做完用原文再编一次,就能发现。

误会 3:漏掉某一个字母或数字。

密文少一格,整句都会错位。

误会 4:Z 后面不知所措。

题目若规定循环,Z 往后是 A。题干没说,不要自己发明,可以先问清楚。

想知道更多

  • 活动:CS Unplugged《不插电的计算机科学》里有二进制、传暗号、用卡片编码的游戏。
  • 电影:《隐藏人物》(Hidden Figures)。和家长一起看:早期计算机科学家怎样把计算步骤写清楚、把信息传准确。
  • 生活作业:和同学约定「字母后移 1 位」,互发三个单词,看能否解回原文。记住 Z 要绕回 A。

未登录时不会保存学习进度