二进制信号是天然的,光的明暗、电路的通断、量子的左右旋……皆为自然语言,比如“星星眨眼”,就是二进制信号。
因此四方语(4Case)体系,将二进制数字0、1作为“基础符号”,其它一切符号都由0、1定义。
二进制数字从右侧第1位向左,每个数位上的1,依次对应着十进制的1、2、4、8、16、32、64、128……
但因为0、1是基础符号,为避免循环定义,不应用其它符号描述,只能用实物或图像来表示二进制数字对应的具体数量。
麻将作为一款历史悠久的游戏,在中国乃至世界范围内广为流传。以麻将牌为实物,可在二进制与“具体数量”之间建立起牢固的“数字想象”。
“线段”对应着古人的“筹算”,所以用麻将“条牌”中“线段的数量”来定义二进制数字。
儿童用纸质卡牌,防吞咽。手绘麻将卡时,“幺鸡”可画成“一条线段”。
表示0-1111的二进制数字,总共四张牌,分别是:“幺鸡”、“二条”、“四条”、“八条”。
另外还有一张“太阳花”,是两张“八条”之和,表示16条线段。
它们对应着二进制数字各数位上的“1”:幺鸡=1,二条=10,四条=100,八条=1000,太阳花=10000。
所有二进制数字皆是“幺鸡”的累加。所以二进制数字中的“1”读作“幺”,以区分于十进制。
通过熟悉二进制数字与“线段数量”的对应关系,练习加法运算,便可对二进制数字产生直观认知。
比如提到二进制数字1011,大家脑海中应当出现“八条 + 二条 + 幺鸡”这三张牌的“图象”,而非名称。
将二进制数字0000 — 1111填入四格点阵,1出现在不同格子,表示不同的“线段数量”。
用“暗格”(读作“有”)表示1,“空格”(读作“无”)表示0,就构成了“二进制点阵”(简称“点阵”,英文Dot Array)。
四方语(4Case)的16个基本字根,正是二进制数字0000 — 1111“点阵化”之后的简写。
可以通过对“点阵”的想象,记忆基本字根与二进制编号的对应关系:将字根想象为点阵,便得到对应的二进制数字;将二进制数字想象为点阵,便得到对应的字根。
所有四方字皆由基本字根排列组合而成,把字根对应的二进制数字依次连接,即为每个四方字的编号。
二进制运算极其简单,适合用设备来完成。输入计算机的所有数据,都要转化成二进制来储存。计算机内部的所有运算也是以二进制进行,只是在输出时转化成了十进制。
单靠手动,二进制数字则略显冗长,存在读写困难,点阵也不好画。所以二进制的人工四则运算,一般要通过竖式进行。
二进制加法口诀只有两句:“1 + 1 = 10”,“1 + 0 = 1”。(严格来说还有“0+0=0”,但考虑到十进制和十六进制加法口诀都没加上这句,所以省略了。)
二进制乘法口诀也只有两句:“1×1=1”,“1×0=0”。所以变成了“连加”。
二进制“减法口诀”有1-1=0、1-0=1、与0-1=1三句。
特别注意“0-1=1”,描述的是“向左侧借位之后”的计算结果,必须记住“借位后0变1”。
例如:100-1=11,1000-1=111,100000-1=11111。
直观上看,“借位1”右边有几个0,减完之后都变成1,而“借位1”自己变成0。
二进制除法不用“试商”(因为商不是0就是1),可直接简化为“连减”,所以采用“连减竖式”即可。
从左向右,遵循“不够减位商0”的运算口诀即可,依次向右做“连减”。
“除数向右移1位”还是“除数与被除数左侧对齐”,取决于首个“商1”的位置。
被除数“连减”到最后,不够减的整数,就是余数。余数补0后继续做“连减”,得到的商即是小数。