万物皆有编号 书架

第 06 章 / 共 12 章

第六章 · 会说话的编号:航班号与高速公路

1944 年 7 月的一个傍晚,如果你是驻守上海虹桥机场的调度员,听到无线电里报出「国航 1501,请求进近」,你其实什么也不知道——1944 年还没有航班号。但如果你身处今天的塔台,听到 CA1501 这个编号,你不查任何表,就能推出一串事实:这是国航的飞机,从北京基地出发向外飞,多半是个重要航线。这就是本章的主角:会说话的编号

前几章里,编号要么追求唯一(UUID),要么追求层级(域名、IP)。但还有第三条路:把规律直接编码进号码本身,让内行看一眼就能推理,不用查表。航空和公路系统把这种思路用到了极致。

航班号:六位字符里藏着一张时刻表

拆开 CA1501。前两位 CA航空公司代码,由国际航空运输协会统一分配——中国国际航空是 CA,东航是 MU,南航是 CZ。这不难理解,本质上是第四章讲过的「层级下放」:协会只发两位字母,后面的数字归各公司自己编。

妙处全在后面的数字里。中国民航有个沿用多年的惯例:单数是去程,双数是回程。所谓去程,就是「从基地向外飞」。比如 MU508 是从香港飞回上海——东航的基地在上海,这是回家,所以用双数。一架飞机早上从基地出去(奇数号),晚上回来(偶数号),两个号码天然成对,调度员看到奇偶就知道这架飞机现在是「在外」还是「回家」。

数字大小也有讲究。传统上,位数越少、号码越靠前,航线越重要——国航的 1 字头多是旗舰国际线。这不只是虚荣心:短的号码在无线电里读起来快,在人工排班表上排得靠前,是一套「重要的事优先」的朴素设计。当然,这些只是惯例而非铁律,例外不少——你偶尔也能看到挂着奇数号往回飞的航班。编号会说话,但它说的是方言,不是法律。

翻译成人话:航班号像部队番号。番号里带着建制——一听「三连二排」,老兵就知道这是哪支部队、大概什么任务;外行听起来只是一串数字。

中国高速:G 字头背后的一整张地图

天上的编号说给调度员听,地上的编号要说给司机听——而且要在时速 120 公里、只有两三秒瞥一眼路牌的情况下说清楚。中国国家高速公路的编号,是这种极限场景下的杰作。

规则只有三条,背下来你就是内行:

这套 2009 年推行的全国统一编号,改掉的是一笔老账:以前一条路跨省就改名,京石高速、石安高速、安新高速……一条北京到深圳的动脉能被切成十几个名字,司机完全无法建立「这条路通往哪里」的整体直觉。改名之后,G4 京港澳高速一个号码从北京直通香港口岸,编号把碎掉的路重新拼成了一张网

美国州际公路:把规律写到个位数上

更早做这件事的是美国人。1956 年艾森豪威尔签署法案开建州际公路系统(Interstate System)时,顺手设计了一套至今堪称范本的编号:

还有更精巧的一层:三位数的州际公路是「支线」,后两位标明它侍奉哪条主线。I-405 是 I-5 的支线(洛杉矶人听到「the 405」会露出痛苦的表情)。第一位数字还要区分功能:奇数开头表示扎进市区的支线,偶数开头表示绕城或环城路。一个老司机看到 I-280,不用地图就知道:这是 I-80 的一条环城线。

翻译成人话:这套编号像地球仪上的经纬网格被烙在了公路上。奇偶告诉你方向,大小告诉你位置,0 和 5 告诉你分量。号码本身就是一张缩略地图。

编号即文档

把三章串起来看:第二章说编号首先要唯一,第四章说放不下就分层级,本章说层级里的每一格都可以再塞进语义。会说话的编号有一个共同的好处:它把「使用说明书」压缩进了号码本身,系统的老用户——调度员、卡车司机、程序员——凭记忆就能推理,而不必每次查询权威数据库。这在大规模、高并发、人命关天的场景里,省下的不只是时间,还有出错的机会。

但它也有代价:语义是约定,约定会过时。航线会调整,城市会扩张,当年「从东向西递增」的整洁网格,几十年后总会被新修的支线戳出窟窿。好的编号系统必须为「未来的例外」留出余地——这个主题我们到第十章讲跨国银行编号时再算总账。

在此之前还有一个更基本的问题没解决:航班号会说话了,可人还是会抄错。值机柜台把 CA1501 听成 CA1507,一个字之差,行李就飞去了另一座城市。编号光是聪明还不够,它还得会自查——这就是下一章校验位的故事。

万物皆有编号
费曼式写法 · 由多个 AI 代理撰写与互相审校