介绍
平衡三进制系统 (Balanced Ternary System) 是一种独特的计数系统,由 -1,0,1 构成的,它的基数是 3(有三个可能的值)。由于将 -1 写成数字不方便,下面将使用字母 T来代替 -1,同时在本文中也用"+0-"符号,其三值布尔逻辑为:上(+1为TRUE)、下(-1为FALSE)、偶(0为BOTH),它与现代计算机中使用的二进制系统在数字编码原理上是相通的,都属于位权计数法。
| 特征 | 二进制 (Binary) | 平衡三进制 (Balanced Ternary) |
|---|---|---|
| 基数 (Base) | 2 | 3 |
| 位值 (Digit/Trit) | "{0,1} (比特/bit)" | "{−1,0,1} (特征/trit)" |
| 位权重 (Weight) | 2^i | 3^i |
二进制编码
|-------|-------|
| 平衡三进制 | 二进制编码 |
| - | 10 |
| 0 | 00 |
| + | 01 |
整数的表示
我们可以计算一个 n 位三进制数(n-trit number)的值,其方法类似于计算一个 n 位二进制数(n-bit number)的值。其中N表示十进制数,其中n-1的n为平衡三进制的数字个数,也就是说,
以13, 237结合上述公式,举个例子:
111(平衡三进制)==9+3+1=13(十进制)
100T10(平衡三进制)==243+0+0-9+3+0=237(十进制)
逻辑门
平衡三进制逻辑门,在运算中起着至关重要的作用,使用非门从数值上,可正数变负数,负数也可变为正数;从逻辑上,假命题变成真命题,真命题变成假命题,两者则保持不变;基于此特性,减法可转成加其相反数,乘除法又是加减法的扩展,一切运算皆是加法运算,而对其逻辑门输入或输出取反操作符合德摩根定律。
基础逻辑门
非门
| TNEG | |
|---|---|
| - | + |
| 0 | 0 |
| + | - |
| [0不变、1与T互取] |
或门
| TOR | - | 0 | + |
|---|---|---|---|
| - | - | 0 | + |
| 0 | 0 | 0 | + |
| + | + | + | + |
| [有1出1、双T出T、其余为0] |
与门
| TAND | - | 0 | + |
|---|---|---|---|
| - | - | - | + |
| 0 | - | 0 | 0 |
| + | - | 0 | + |
| [有T出T、双1出1、其余为0] |
或非门
| TOR | - | 0 | + |
|---|---|---|---|
| - | + | 0 | - |
| 0 | 0 | 0 | - |
| + | - | - | - |
| [有1出T、双T出1、其余为0] |
与非门
| TNAND | - | 0 | + |
|---|---|---|---|
| - | + | + | + |
| 0 | + | 0 | 0 |
| + | + | 0 | - |
| [有T出1、双1出T、其余为0] |
德·摩根定律
平衡三进制的四个基础逻辑门真值表是对称的,你可以通过如下图所示的对输入取反(垂直箭头)或对输出取反(水平箭头)来转换它们。

注释
-
你可以在任意基础逻辑门之间彼此转换,至多需要同时对输入及输出取反。
-
你可以通过对输出取反,在或门/或非门之间进行转换,这对与门/与非门同样成立。也可以通过对输入取反,在或非门/与门之间进行转换,这对或门/与非门同样成立。
-
对输出取反,会将真值表的每一位 T与1 对换。对输入取反,真值表会镜像翻转。
四则运算逻辑门
加法逻辑门
| Add | - | 0 | + |
| - | -+ | 0- | 00 |
| 0 | 0- | 00 | 0+ |
| + | 00 | 0+ | +- |
|---|
它基于三种核心逻辑门:加和门 TSUM、半加器进位门 TCONS、全加器进位门 TANY。其中,1个加和门与1个共识门组成半加器,而2个半加器与1个调和门组全加器,此结构类似于传统的二进制全加器,在前苏联的三进制计算机Сетунь有可能应用,在Douglas W. Jones的文章中也有提及,而减法则是被减数使用反相器,获得相反数后相加,统一为加法运算,真值表如下所示。
加和门
| TSUM | - | 0 | + |
|---|---|---|---|
| - | + | - | 0 |
| 0 | - | 0 | + |
| + | 0 | + | - |
| [当TT/01/10时出1、当11/0T/T0时出T、其余为0] |
共识门
| TCONS | - | 0 | + |
|---|---|---|---|
| - | - | 0 | 0 |
| 0 | 0 | 0 | 0 |
| + | 0 | 0 | + |
| [双T出T、双1出1、其余为0] |
调和门
| TANY | - | 0 | + |
|---|---|---|---|
| - | 空 | - | 0 |
| 0 | - | 0 | + |
| + | 0 | + | 空 |
| [当01/10时出1、当0T/T0时出T、其余为0] |
减法器
| Sub | - | 0 | + |
| - | 00 | 0- | -+ |
| 0 | 0+ | 00 | 0- |
| + | +- | 0+ | 00 |
|---|
在平衡三进制中,可使用非门得其相反数,而减法相当于加上取反的被减数,这样就实现的加减法的统一运算,即减法器可用全加器与反相器组成,其中加减表以00为对角是对称的。
乘法逻辑门
平衡三进制 digit∈{T,0,1} 的乘法遵循严格对称性,其一位乘法完全无进位,三条核心规则即可覆盖所有情况:
- 吸收律,任意数0乘都得0
- 恒等律,任意数乘1等于它本身
- 取反律,任意数乘T(-1)等于相反数
对异或门输出取反操作得同或门,此同或门与乘法表结果一致,以下真值表。
异或门
| TXOR | - | 0 | + |
|---|---|---|---|
| - | - | 0 | + |
| 0 | 0 | 0 | 0 |
| + | + | 0 | - |
| [双T 及 双1出T、1T 及 T1出1、其余为0] |
同或门
| TXNOR | - | 0 | + |
|---|---|---|---|
| - | + | 0 | - |
| 0 | 0 | 0 | 0 |
| + | - | 0 | + |
| [双T 及 双1 出1、1T 及 T1出T、其余为0] |
用同或门进行乘法运算,其运算闭合集仅为 {T,0,1} 偏积表本身,如:T1T * 1110T,将被乘数形成[0,1110T,TTT01]偏积表,用乘数当成下标来调用偏积表,然后移位后相加就可以得到最终乘积。
除法(二重试商法)
| Div | - | 0 | + |
| - | + | −∞ | - |
| 0 | 0 | NaN | 0 |
| + | - | +∞ | + |
|---|
此方法由中国学者改进Donald Knuth的试商法而来,它有着极其简单的运算规则:用每轮除法余数最高位是否为0的条件,来判断这一轮除法是否结束,无需对比每轮余数大小,核心逻辑是将被除数拆分为两个向量(p和s),其中 p 的位数最多与除数 q 相同,s 则是剩余位数的向量;然后根据规则(双正或双负得正商,一正一负得负商,其它为0)上商,每轮除法至多一次或两次相减,若相减一次后,余数 p 最高位仍不为0,则需再相减一次,得余数 p 最高位为0本轮除法结束,该位是二重商取双倍值,并把结果给到寄存器 r;然后余数 p 左移一位,丢弃上一轮除数的最高位(已为0),拉取一位 s 进行补充,得到新余数 p 转入下一轮,结果 r (3倍放大)右移一位补0,则当s 用尽时,结果 r 和被除数 p 构成最终的商和余数。以下部分示例:
+
++0- ++
-------- ------
+0- )+0++0+ +- )+0+
-0+ -+
-------- ------
0+-+ 0++
-0+ -+
-------- ------
00-0 +-
000 -+
--------- ------
-0+ 0
+0-
--------- 0+与++相加,商得+--
0
平衡三进制发展
平衡三进制计算的发展,可以说是意义的,但也可以说是没有意义的,它是一种先进的进制,但它确实难以实现,可按照前人的路走下去,用逆直流T/交流0/正直流1的三种逻辑门,然后用不同的电阻来存储信息,即ReRAM和忆阻器,大体上是可以实现它的底层,从而真正的弄出一台计算机出来。
其实,平衡三进制的特性更有着对抗的性质,就像两股力量的交锋,势均力敌是平衡,一方或另一方占上风则是T或1,就像天平的称有且三种结果:左倾(小于)、平衡(等于)、右倾(大于),以下神经信号为例:
静息状态是神经元的默认和准备状态,兴奋是神经元被激活并传递信息的动作,抑制是神经元被阻止或被阻碍传递信息的动作。
- 静息电位是一种蓄能状态,它就像拉满的弓,一旦接收到足够的刺激(达到阈值),神经元就能迅速爆发产生动作电位(Action Potential),将信息向下传递。
- 当神经元接收到兴奋性突触后电位 (EPSP),导致其膜电位去极化(变得更正,如从 −70mV−70mV 升到 −60mV−60mV),如果去极化达到阈值(Threshold),神经元会爆发性地产生一个动作电位(Action Potential)。这时,大量 Na+Na+ 通道打开,Na+Na+ 大量涌入细胞,导致膜电位瞬间变为正值(约 +30mV+30mV)。兴奋信号沿轴突迅速传导,将信息传递给下一个神经元。
- 当神经元接收到抑制性突触后电位 (IPSP),导致其膜电位超极化(变得更负,如从 −70mV−70mV 降到 −80mV−80mV), 通常是 Cl−Cl−(氯离子)流入细胞,或者 K+K+ 流出增加,使得膜内负电性增强,使得膜电位离兴奋阈值更远,神经元更难被兴奋,相当于** "给刹车"或"静音" **,阻止或调节信息的传递。
用汽车来类比神经元的状态:静息(准备发车)、兴奋(油门)、抑制(刹车),一次动作信号的是否产生,车已发动未松离合,离合强度达到阈值油门踩死瞬间爆发,汽车一次冲刺(兴奋/动作电位)后,迅速松开油门并踩下刹车,最后重新挂回到停车档(静息)。也可以类比于一个充电的电容,在一定空间与时间下积累足够的阈值能量,有两种小人,一种会输入电荷,另一种会窃取电荷,一旦能量达到阈值瞬间爆发,发射一次强度固定的信号,显现出"全或无" (All-or-None) 的定律,给下一个神经传递信号。
- 以肌肉运动为指标,以"放松"(T)、"收缩"(1)、"维持"(0)的变化。
- 以股票收入为指标,以"买入"(T)、"卖出"(1)、"持有"(0)的变化。
- 以神经信号为指标,以准备(静息0)、激活(兴奋1)和平息(抑制T)的变化。
其中平衡的状态是短暂,但太多数都会自发的回到平衡状态0,然后根据输入切换状态,从而达到相应的效果。