平衡三进制

来自GSXAB的知识库
平衡三进制
术语名称 平衡三进制
英语名称 balanced ternary numeral system
别名 balanced base-3 numeral system, balanced ternary
平衡三进制的
术语名称 平衡三进制的
英语名称 balanced ternary
别名 base-3, trinary
平衡三进制数
术语名称 平衡三进制数
英语名称 balanced ternary number
别名 balanced base-3 number

平衡三进制(balanced ternary, balanced base-3)记数系统指基数为 3平衡进位制记数法。是指通过 -1 、 0 、 1 三个符号表达数值的记数方法。

有时也被简称为平衡进制(即平衡进位制记数法),在不引起混淆的情况下也直接称为三进制

在计算机中,平衡三进制曾经是与二进制有竞争力的对手,但是目前已较少使用。

定义

基数为 3 的平衡进位制记数法称为平衡三进制记数法(balanced ternary numeral system, balanced base-3 numeral system, 简称 balanced ternary, balanced base-3)。在不引起混淆的情况下,有时也简称三进制记数法

平衡三进制记数法下的数称为平衡三进制数(balanced ternary number)。在不引起混淆的情况下,有时也简称三进制记数法

平衡三进制数中的一位(digit)即平衡三进制位,也常称为一个三进制位(ternary digit, trinary digit, trit),其位权为 3 的幂

表示

平衡三进制中的每一位只含有 [math]\displaystyle{ 0 }[/math][math]\displaystyle{ 1 }[/math][math]\displaystyle{ \bar{1} }[/math][math]\displaystyle{ \mathrm{T} }[/math] 三个符号。在写成数形式时,遵从进位制记数法的一般规则,由权重更高的位到权重更低的位写成一串,且存在小数部分时在位权为 [math]\displaystyle{ 3^0=1 }[/math] 的位后添加小数点。如 [math]\displaystyle{ 10\mathrm{T}101 }[/math]

若需要指出具体进制时,可使用一般的添加进制下标的形式,区分于三进制时使用 [math]\displaystyle{ \mathrm{bal}3 }[/math] ,即 [math]\displaystyle{ 1001100_\mathrm{bal3} }[/math][math]\displaystyle{ (1001100)_\mathrm{bal3} }[/math]

与其他平衡进制一样,数字最高位符号决定了整个数字的符号,不需要额外的符号来标识数值的正负。

分隔符

由于三进制数通常有较多位数,有时对其使用类似千位分隔符的方式分段以便阅读。在通常情况下,由于三进制数以三进制字节形式 6 位一组地出现,会按照每 2 位或每 3 位一段进行分隔。如 [math]\displaystyle{ 10\ \mathrm{T}1\ 01 }[/math][math]\displaystyle{ 10\mathrm{T}\ 101 }[/math]

特别地, 2 位分隔本身也可以直接简写为九进制,这是因为 9 本身是 3 的幂。如 [math]\displaystyle{ 371_{9} }[/math] 。三位分隔理论上也可以使用 27 进制,如 [math]\displaystyle{ BA_{27} }[/math] ,但是符号太多不便于识读,使用相对较少。

数值及表示

位权

对三进制数,其小数点前的数位(称为最低位(least significant trit, LST))的位权为 1 ,向高位依次为 [math]\displaystyle{ 3,3^2,3^3,\cdots }[/math] ,其中权重最高的位称为最高位(most significant trit, MST)。

如果存在小数部分,则向低位也依次为 [math]\displaystyle{ 3^{-1},3^{-2},3^{-3},\cdots }[/math]

平衡三进制转换为十进制

计算一个平衡三进制数的十进制表示时,可以通过计算对应位权相加的方式,即 [math]\displaystyle{ a_n 2^n + a_{n-1} 2^{n-1} + \cdots + a_1 2^1 + a_0 }[/math] ,也可以通过 Hornor 法则将其看作多项式求值 [math]\displaystyle{ ((\cdots(a_n x + a_{n-1}) x + \cdots + a_1) x + a_0) \mid_{x=3} }[/math] 。与普通进制的区别只是其中 [math]\displaystyle{ a_i \in \{0, \pm1\} }[/math] 不一定是正数。

十进制转换为平衡三进制

短除法:不断对 3 做最小绝对余数的带余除法,也就是余数取 0 和 ±1 的带余除法,并将余数作为得到的位,商继续循环,直到 0 为止。余数从最低位依次到最高位排列。也可理解为是普通的带余除法,但是当余数为 2 时将余数视为 -1 并为商加 1 。

标准三进制转换为平衡三进制

从右向左将每一位 2 处理成 1T (所在位为 T ,然后向前进一位),即可从标准三进制转换为平衡三进制。

平衡三进制转换为标准三进制

将每一个 T 处理成 T2 (所在位为 2 ,然后从前借一位),然后如果最终最高位为 T ,则计算差得到负数。即可从平衡三进制转换为标准三进制。

一些常见数值表示

对有限小数,不列出其对应的无限循环小数形式。

整数(十进制) 平衡三进制 整数(十进制) 平衡三进制 分数(十进制) 平衡三进制 分数(十进制) 平衡三进制
1 1 -1 T 1/1 1 -1/1 T
2 1T -2 T1 1/2 [math]\displaystyle{ 0.\overline{1} }[/math]/[math]\displaystyle{ 1.\overline{\mathrm{T}} }[/math] -1/2 [math]\displaystyle{ 0.\overline{\mathrm{T}} }[/math]/[math]\displaystyle{ \mathrm{T}.\overline{1} }[/math]
3 10 -3 T0 1/3 0.1 -1/3 0.T
4 11 -4 TT 1/4 [math]\displaystyle{ 0.\overline{1T} }[/math] -1/4 [math]\displaystyle{ 0.\overline{T1} }[/math]
5 1TT -5 T11 1/5 [math]\displaystyle{ 0.\overline{1TT1} }[/math] -1/5 [math]\displaystyle{ 0.\overline{T11T} }[/math]
6 1T0 -6 T10 1/6 [math]\displaystyle{ 0.0\overline{1} }[/math]/[math]\displaystyle{ 0.1\overline{\mathrm{T}} }[/math] -1/6 [math]\displaystyle{ 0.0\overline{\mathrm{T}} }[/math]/[math]\displaystyle{ 0.\mathrm{T}\overline{1} }[/math]
7 1T1 -7 T1T 1/7 [math]\displaystyle{ 0.\overline{0110\mathrm{TT}} }[/math] -1/7 [math]\displaystyle{ 0.\overline{0\mathrm{TT}011} }[/math]
8 10T -8 T01 1/8 [math]\displaystyle{ 0.\overline{01} }[/math] -1/8 [math]\displaystyle{ 0.\overline{0\mathrm{T}} }[/math]
9 100 -9 T00 1/9 0.01 -1/9 0.0T
10 101 -10 T0T 1/10 [math]\displaystyle{ 0.\overline{010\mathrm{T}} }[/math] -1/10 [math]\displaystyle{ 0.\overline{0\mathrm{T}01} }[/math]
11 11T -11 TT1 1/11 [math]\displaystyle{ 0.\overline{01\mathrm{T}11} }[/math] 1/11 [math]\displaystyle{ 0.\overline{0\mathrm{T}1\mathrm{TT}} }[/math]
12 110 -12 TT0 1/12 [math]\displaystyle{ 0.0\overline{1\mathrm{T}} }[/math] -1/12 [math]\displaystyle{ 0.0\overline{\mathrm{T}1} }[/math]
13 111 -13 TTT 1/13 [math]\displaystyle{ 0.\overline{01\mathrm{T}} }[/math] -1/13 [math]\displaystyle{ 0.\overline{0\mathrm{T}1} }[/math]
14 1TTT -14 T111 1/14 [math]\displaystyle{ 0.\overline{01\mathrm{T}0\mathrm{T}1} }[/math] 1/14 [math]\displaystyle{ 0.\overline{0\mathrm{T}101\mathrm{T}} }[/math]
15 1TT0 -15 T110 1/15 [math]\displaystyle{ 0.0\overline{1\mathrm{TT}1} }[/math] -1/15 [math]\displaystyle{ 0.0\overline{\mathrm{T}11\mathrm{T}} }[/math]


记数系统
位值制记数法 进位制记数法/标准位值制记数法(进制) 二进制八进制十进制十六进制、……
非标准位值制记数法 带符号进位制记数法/
平衡记数法(平衡进制)
平衡三进制、……
双射记数法(双射进制) 一进制双射十进制双射二十六进制、……
位权是幂
但基数不是自然数
(非自然数进制)
[math]\displaystyle{ -2 }[/math][math]\displaystyle{ -4 }[/math] 、……
[math]\displaystyle{ \sqrt{2} }[/math][math]\displaystyle{ \sqrt{3} }[/math][math]\displaystyle{ \sqrt[12]{2} }[/math] 、……
[math]\displaystyle{ 2i }[/math][math]\displaystyle{ \sqrt[4]{2}i }[/math][math]\displaystyle{ 2\omega }[/math][math]\displaystyle{ \sqrt[3]{2}\omega }[/math][math]\displaystyle{ -1\pm i }[/math] 、……
位权不是幂(混合进制 二五混合进制阶乘进制、……
其他 [math]\displaystyle{ p }[/math]-进数
质数记数法、……
符值制记数法 罗马记数法希腊记数法、……