fbpx
维基百科

平衡三進位

平衡三进制(英語:balanced ternary)是一種非標準的計數进位制,它是一種基數為的进位制系統,其中用於計數的符码為,與標準基數 3 进制系統對比:其中的計數符號為。以平衡三进制所記錄的數字可以表達出全部整數,由于的引入,而且對负数不必使用额外的负號;應用在於解決秤重問題[1],或在一些早期的計算機中使用[2]

有些地方使用不同符码來表示平衡三进制中的三個數符。本文中以 T(連在 1 上方的负號)表示 ,而 表示自身。其他約定包括使用 '-' 和 '+'分別表示 ,或使用希臘字母 Θ(於圓圈中的负號)來表示 。在 Setun計算機中 表示為倒轉的阿拉伯數字一:「1[2]

平衡三进制在 Michael Stifel(1544)的書《Arithmetica Integra》中出現過[3]。它也曾出現在 Kepler和 LéonLalanne 的作品中。對负数不必使用额外的负號这一点,使得平衡三进制在四则运算的加、減、乘法效率,會比二进制高。美国著名计算机学家高德纳在《编程的艺术》一书中指出,“也许最美的进制是平衡三进制”。

数的表示方法

整数的轉換

平衡三进制和其他进制一样,各位的数字和位权相乘然后叠加起来,就是该数的数值。數字下標 bal3 表示為平衡三进制,而下標 dec 則為十进制:

10bal3 = 1×31 + 0×30 = 3dec
10Tbal3 = 1×32 + 0×31 + (-1)×30 = 8dec
-9dec = -1×32 + 0×31 + 0×30 = T00bal3
8dec = 1×32 + 0×31 + (-1)×30 = 10Tbal3

平衡三进制不需要额外的符号就可以表示负数。左起第一位若非 0 而是 T 的即为负数,若是 1 的則是正数。

在平衡三进制中,各位上的数字之和为偶数的整数是偶数;各位上的数字之和为奇数的整数是奇数。

比如:

十进制 平衡三进制 轉換展開 十进制 平衡三进制 轉換展開
0 0 0
1 1 +1 -1 T -1
2 1T +3-1 -2 T1 -3+1
3 10 +3 -3 T0 -3
4 11 +3+1 -4 TT -3-1
5 1TT +9-3-1 -5 T11 -9+3+1
6 1T0 +9-3 -6 T10 -9+3
7 1T1 +9-3+1 -7 T1T -9+3-1
8 10T +9-1 -8 T01 -9+1
9 100 +9 -9 T00 -9
10 101 +9+1 -10 T0T -9-1
11 11T +9+3-1 -11 TT1 -9-3+1
12 110 +9+3 -12 TT0 -9-3
13 111 +9+3+1 -13 TTT -9-3-1

小数

平衡三进制和十进制一样,用小数点分隔整数部分和小数部分。

十进制 −0.9 −0.8 −0.7 −0.6 −0.5 −0.4 −0.3 −0.2 −0.1 0
平衡三进制 T.010T T.1TT1 T.10T0 T.11TT 0.T or T.1 0.TT11 0.T010 0.T11T 0.0T01 0
十进制 0.9 0.8 0.7 0.6 0.5 0.4 0.3 0.2 0.1 0
平衡三进制 1.0T01 1.T11T 1.T010 1.TT11 0.1 or 1.T 0.11TT 0.10T0 0.1TT1 0.010T 0

在平衡三进制中,四舍五入和截位的操作是等效的。

分数的小数化

平衡三进制可以像十进制一样,可以用小数来表示分数,例如=0.1bal3

十进制分數 平衡三进制 十进制分數 平衡三进制
1/1 1 1/11 0.01T11
1/2 0.1 1.T 1/12 0.01T
1/3 0.1 1/13 0.01T
1/4 0.1T 1/14 0.01T0T1
1/5 0.1TT1 1/15 0.01TT1
1/6 0.01 0.1T 1/16 0.01TT
1/7 0.0110TT 1/17 0.01TTT10T0T111T01
1/8 0.01 1/18 0.001 0.01T
1/9 0.01 1/19 0.00111T10100TTT1T0T
1/10 0.010T 1/20 0.0011
十进制分数 平衡三进制 十进制分数 平衡三进制
0/1 0 10/11 1.0T1TT
1/2 0.1 1.T 11/12 1.0T1
2/3 0.1 12/13 1.0T1
3/4 0.1T 13/14 1.0T101T
4/5 0.1TT1 14/15 1.0T11T
5/6 1.0T 1.T1 15/16 1.0T11
6/7 1.0TT011 16/17 1.0T111T0101TTT10T
7/8 1.0T 17/18 1.00T 1.0T1
8/9 1.0T 18/19 1.00TTT1T0T00111T101
9/10 1.0T01 19/20 1.00TT

与十进制、二进制类似,部分分数有两种表达形式。在十进制、二进制中,最小的数码是0,因此小数点后最右边无限循环的0可以省略掉,从而变成一个整数或有限小数;而在平衡三进制中,小数点后最右边无限循环的T不能省略,因而不能变成整数或有限小数。

无理数

无论对于十进制、平衡三进制还是其他以有理数为底数的记数系统,所有的无理数都只能表示成无限不循环小数。下表列出了一些代数无理数超越无理数的十进制与平衡三进制的表示。

代数数 十进制 平衡三进制
  1.41421356237309... (≈ 1.414) 1.11T1TT00T00T01T0T00T00T01T...
  1.73205080756887... (≈ 1.732) 1T.T1TT10T0000TT1100T0TTT011T...
  2.2360679774997... (≈ 2.236) 1T.1T0101010TTT1TT11010TTT01T...
φ(黄金分割,  1.6180339887498... (≈ 1.618) 1T.T0TT01TT0T10TT11T0011T1001...
超越无理数 十进制 平衡三进制
π(圆周率) 3.1415926535897932384626433...(≈ 3.1416) 10.011T111T000T011T1101T11111...
e(自然对数的底) 2.718281828459045... (≈ 2.718) 10.T0111TT0T0T111T0111T000T11...


下面是另一个重要常数欧拉-马斯刻若尼常数在十进制与平衡三进制中的表示(现在仍无法确定其是有理数还是无理数):

十进制 平衡三进制
γ(欧拉-马歇罗尼常数) 0.57721566490153... (≈ 0.577) 1.TT1TT1T1010001T0T00111TTT0...

十进制到平衡三进制的转换

十进制转化为平衡三进制,可参照下述方法,先圆整后,再分别对整数部分和小数部分进行连除法和连乘法即可。

-25.4

 -25.4,圆整#为-25; ‡ 余,-0.4;♦ -25÷3=-8⅓, 圆整为- 8;余,-1↑; ‡ -0.4×3=-1.2, 圆整为-1|;余,-0.2; - 8÷3=-2⅔, 圆整为- 3;余, 1|; ‡ -0.2×3=-0.6, 圆整为-1|;余, 0.4; - 3÷3=-1 , 圆整为- 1;余, 0|; ‡ 0.4×3= 1.2, 圆整为 1|;余, 0.2; - 1÷3=- ⅓, 圆整为 0;余,-1|; ‡ 0.2×3= 0.6, 圆整为 1↓;余,-0.4;跳入循环 -25.410=T01T.TT113

#圆整到最近的整数

当然,也可以采用另一种方法。

 -25.410=-(1T*1011+1TT*1010+11*101T) =-(1T*101+1TT+11/101) =-10T1.11TT =T01T.TT11 

三进制计算机中数的表示

計算機的初期發展過程中,蘇聯有一些實驗性質的計算機,是以平衡三进制而不是二进制來設計製造的,其中最著名的是由尼古拉·布魯金索夫和謝爾蓋·索博列夫建造的 Сетунь。 與現在通行的二进制相比,平衡三进制的實驗性設計具有許多計算科學上的優勢。 特別是,正負一致性可以加快多位乘法中的進位速率,而捨入截斷當量則會減少對分數做捨入的進位次數。 在平衡三進制中,單一位數的乘法表不需用到進位,而加法表只會有兩個對稱進位而不是三個。

注:以下部分以“'”为十进制数万位分隔符

基本概念

位(trit):对称三进制的数位;

字节(tryte):莫斯科大学的Сетунь以6位为1个字节,单字节整数的表示范围为:-364~+364;

字(word):参照二进制,以2个字节为1个字,单字整数的表示范围为:-26'5720~+26'5720;

整数

纽约州立大学在1973年开发的测试机Ternac,采用24位表示一个整数,表示范围为-1412'1476'8240~+1412'1476'8240

定点数

定点数的表示方法和整数一样。只是会预先指定小数点的位置。

比如采用48位表示一个实数,整数部分、小数部分各24位。则,表示范围为-1412'1476'8240.5~+1412'1476'8240.5,精度为3-24(3.54*10-12

浮点数

Ternac,采用48位表示一个实数,其中尾数42位,指数6位。

参照IEEE754的浮点数表示法,对称三进制的表示法如下:

1个符号位(整数部分)+尾数域41位(小数部分)+指数域6位

整数部分为1是正的规约数。表示范围为0.5*3-364+0.5*3-405~0.5*3365-0.5*3323

整数部分为0的是零附近的数,是非规约数。非规约数的指数固定为-364,指数域并入尾数。表示范围为0.5*3-411-0.5*3-364~0.5*3-364-0.5*3-411,精度为0.5*3-411

逻辑常量

平衡三进制 逻辑狀態 標準三进制
1 True 2
0 Unknown 1
T False 0

三进制计算机,以三值逻辑为基础,有三个逻辑狀態值——真、假、未知。我们用   表示真、  表示未知,而   則表示假。

三进制计算机中信息的表示

三进制计算机中,以平衡三进制为信息进行编码。

我们可以以12位为单位,对文字进行编码作为标准信息交换码(STUCII,Standard Ternary Unified Code for Information Interchange)。其容量为53'1441个字符,约是16bits容量的8.1倍。

运算

加减乘除四则运算

平衡三进制和二进制一样,乘法运算等效于移位叠加运算。

单双位平衡三进制加法表、乘法表、除法表

加法
+ TT T0 T1 T 0 1 1T 10 11
11 0 1 1T 10 11 1TT 1T0 1T1 10T
10 T 0 1 1T 10 11 1TT 1T0
1T T1 T 0 1 1T 10 11
1 T0 T1 T 0 1 1T
0 TT T0 T1 T 0 1
T T11 TT T0 T1 T 0
T1 T10 T11 TT
T0 T1T T10
TT T01
乘法
× TT T0 T1 T 0 1 1T 10 11
11 T11T TT0 T01 TT 0 11 10T 110 1TT1
10 TT0 T00 T10 T0 0 10 1T0 100
1T T01 T10 TT 1 0 IT 11
1 TT T0 T1 T 0 1
0 0 0 0 0 0 0
T 11 10 1T 1 0 T
T1 10T 1T0 11
T0 110 100
TT 1TT1
减法
- TT T0 T1 T 0 1 1T 10 11
TT 0 T T1 T0 TT T11 T10 T1T T01
T0 1 0 T T1 T0 TT T11 T10 T1T
T1 1T 1 0 T T1 T0 TT T11 T10
T 10 1T 1 0 T T1 T0 TT T11
0 11 10 1T 1 0 T T1 T0 TT
1 1TT 11 10 1T 1 0 T T1 T0
1T 1T0 1TT 11 10 1T 1 0 T T1
10 1T1 1T0 1TT 11 10 1T 1 0 T
11 10T 1T1 1T0 1TT 11 10 1T 1 0
除法
÷ TT T0 T1 T 0 1 1T 10 11
TT 1 1.1 1T 11 -∞ TT T1 T.T T
T0 1.T1 1 1.1 10 -∞ T0 T.T T T.1T
T1 1.T 1.T 1 1T -∞ T1 T T.1 T.1
T 0.1T 0.1 0.1 1 -∞ T 0.T 0.T 0.T1
0 0 0 0 0 NaN 0 0 0 0
1 0.T1 0.T 0.T T +∞ 1 0.1 0.1 0.1T
1T T.1 T.1 T T1 +∞ 1T 1 1.T 1.T
10 T.1T T T.T T0 +∞ 10 1.1 1 1.T1
11 T T.T T1 TT +∞ 11 1T 1.1 1

注:减法是左列减去顶行,除法是左列除以顶行


1从上表中可以看出,双位数相加可能会变成单位数,双位数相减可能会变成三位数,双位数相乘可能可能仍是双位数。这种情况在十进制和二进制中不会发生。

多位数的加减法

就是逐位做加减法。 减法,亦可以逐位取反后,换做加法 比如

 1TT1TT.1TT1 1TT1TT.1TT1 1TT1TT.1TT1 1TT1TT.1TT1 + 11T1.T - 11T1.T - 11T1.T -> + TT1T.1 ------------ -------------- --------------- 1T0T10.0TT1 1T1001.TTT1 1T1001.TTT1 + 1T + 1 T1 + T T1 ------------ ---------------- ---------------- 1T1110.0TT1 1110TT.TTT1 1110TT.TTT1 + T + T 1 + T 1 ------------ ---------------- ---------------- 1T0110.0TT1 01100T.TTT1 01100T.TTT1 

乘法

可以采用类似于十进制的各种方法。 比如

 1TT1.TT × T11T.1 ------------ 1TT.1TT T11T.11 1TT1T.T 1TT1TT +T11T11 ------------ 0T0000T.10T 

除法

平衡三进制的除法和十进制的除法类似。

但是,大家已经知道,0.5在平衡三进制中有0.11111…和1.TTTT…两种表达式,也就是说,如果被除数超过除数的一半,商的当前位就要置1或T。

 1TT1.TT ------------- T11T.1 ) T0000T.10T T11T1 -------- 1T1T0 1TT1T -------- 111T 1TT1T --------- T00.1 T11T.1 --------- 1T1.00 1TT.1T --------- 1T.T1T 1T.T1T -------- 0 

开平方

平衡三进制开平方和十进制、二进制类似。但和除法一样,要比较的是半除数。例如:

 1. 1 1 T 1 T T 0 0 ... ------------------------ √1T 1<1T<11, 置 1 1 ----- 10 1.0T 1.0T>0.10, 置 1 1T0 1.T0 -------- 110 1T0T 1T0T>110, 置 1 10T0 10T0 -------- 1110 T1T0T T1T0T<TTT0, 置 T 100T0 T0010 --------- 111T0 1TTT0T 1TTT0T>111T0, 置 1 10T110 10T110 ---------- 111T10 TT1TT0T TT1TT0T<TTT1T0, 置 T 100TTT0 T001110 ----------- 111T1T0 T001TT0T T001TT0T<TTT1T10, 置 T 10T11110 T01TTTT0 ------------ 111T1TT0 T001T0T TTT1T110<T001T0T<111T1TT0, 置 0 T ----------- 111T1TT00 T001T000T TTT1T1100<T001T000T<111T1TT00, 置 0 T ------------- 111T1TT000 T001T00000T ... 

逻辑运算

以下是平衡三进制逻辑运算真值表。

逻辑与
T 0 1
T T T T
0 T 0 0
1 T 0 1
逻辑或
T 0 1
T T 0 1
0 0 0 1
1 1 1 1
逻辑与非
T 0 1
T 1 1 1
0 1 0 0
1 1 0 T
逻辑或非
T 0 1
T 1 0 T
0 0 0 T
1 T T T
逻辑异或
T 0 1
T T 0 1
0 0 0 0
1 1 0 T
逻辑合意
T 0 1
T T 0 0
0 0 0 0
1 0 0 1
逻辑调和
T 0 1
T T T 0
0 T 0 1
1 0 1 1
逻辑非
¬ T 0 1
1 0 T

另見

參考文獻

  1. ^ Hayes, Brian, Third base (PDF), American Scientist, 2001, 89 (6): 490–494, doi:10.1511/2001.40.3268 . Reprinted in Hayes, Brian, Group Theory in the Bedroom, and Other Mathematical Diversions, Farrar, Straus and Giroux: 179–200, 2008 [2019-04-22], ISBN 9781429938570, (原始内容于2019-05-16) 
  2. ^ 2.0 2.1 N.A.Krinitsky; G.A.Mironov; G.D.Frolov. Chapter 10. Program-controlled machine Setun. M.R.Shura-Bura (编). Programming. Moscow. 1963 (俄语). 
  3. ^ Stifel, Michael, Arithmetica integra: 38, 1544 (拉丁语) .

外部链接

平衡三進位, 此條目需要补充更多来源, 2016年5月13日, 请协助補充多方面可靠来源以改善这篇条目, 无法查证的内容可能會因為异议提出而移除, 致使用者, 请搜索一下条目的标题, 来源搜索, 网页, 新闻, 书籍, 学术, 图像, 以检查网络上是否存在该主题的更多可靠来源, 判定指引, 平衡三进制, 英語, balanced, ternary, 是一種非標準的計數进位制, 它是一種基數為3, displaystyle, 的进位制系統, 其中用於計數的符码為, displaystyle, 與標準基數, 进制系統對. 此條目需要补充更多来源 2016年5月13日 请协助補充多方面可靠来源以改善这篇条目 无法查证的内容可能會因為异议提出而移除 致使用者 请搜索一下条目的标题 来源搜索 平衡三進位 网页 新闻 书籍 学术 图像 以检查网络上是否存在该主题的更多可靠来源 判定指引 平衡三进制 英語 balanced ternary 是一種非標準的計數进位制 它是一種基數為3 displaystyle 3 的进位制系統 其中用於計數的符码為 1 0 1 displaystyle 1 0 1 與標準基數 3 进制系統對比 其中的計數符號為0 1 2 displaystyle 0 1 2 以平衡三进制所記錄的數字可以表達出全部整數 由于 1 displaystyle 1 的引入 而且對负数不必使用额外的负號 應用在於解決秤重問題 1 或在一些早期的計算機中使用 2 记数系统印度 阿拉伯数字系统西方阿拉伯数字 阿拉伯文数字 高棉數字 孟加拉数字 印度數字 波羅米數字泰语数字漢字文化圈記數系統中文数字閩南語數字越南语数字算筹 日語數字朝鲜语數字苏州码子字母記數系統阿拉伯字母數字亚美尼亚数字西里爾數字吉茲數字 希伯來數字希腊数字 阿利耶波多數字其它記數系統雅典數字巴比倫數字古埃及数字伊特拉斯坎數字 玛雅数字罗马数字熙笃会数字依底数区分的进位制系统1 2 3 4 5 6 8 9 10 11 12 15 16 18 20 24 30 32 36 60 64查论编有些地方使用不同符码來表示平衡三进制中的三個數符 本文中以 T 連在 1 上方的负號 表示 1 displaystyle 1 而 0 displaystyle 0 和 1 displaystyle 1 表示自身 其他約定包括使用 和 分別表示 1 displaystyle 1 和 1 displaystyle 1 或使用希臘字母 8 於圓圈中的负號 來表示 1 displaystyle 1 在 Setun計算機中 1 displaystyle 1 表示為倒轉的阿拉伯數字一 1 2 平衡三进制在 Michael Stifel 1544 的書 Arithmetica Integra 中出現過 3 它也曾出現在 Kepler和 LeonLalanne 的作品中 對负数不必使用额外的负號这一点 使得平衡三进制在四则运算的加 減 乘法效率 會比二进制高 美国著名计算机学家高德纳在 编程的艺术 一书中指出 也许最美的进制是平衡三进制 Perhaps the prettiest number system of all is the balanced ternary notation Donald Knuth The Art of Programming目录 1 数的表示方法 1 1 整数的轉換 1 2 小数 1 2 1 分数的小数化 1 2 2 无理数 1 3 十进制到平衡三进制的转换 1 4 三进制计算机中数的表示 1 4 1 基本概念 1 4 2 整数 1 4 3 定点数 1 4 4 浮点数 2 逻辑常量 3 三进制计算机中信息的表示 4 运算 4 1 加减乘除四则运算 4 1 1 单双位平衡三进制加法表 乘法表 除法表 4 1 2 多位数的加减法 4 1 3 乘法 4 1 4 除法 4 1 5 开平方 4 2 逻辑运算 5 另見 6 參考文獻 7 外部链接数的表示方法 编辑整数的轉換 编辑 平衡三进制和其他进制一样 各位的数字和位权相乘然后叠加起来 就是该数的数值 數字下標 bal3 表示為平衡三进制 而下標 dec 則為十进制 10bal3 1 31 0 30 3dec 10Tbal3 1 32 0 31 1 30 8dec 9dec 1 32 0 31 0 30 T00bal3 8dec 1 32 0 31 1 30 10Tbal3平衡三进制不需要额外的符号就可以表示负数 左起第一位若非 0 而是 T 的即为负数 若是 1 的則是正数 在平衡三进制中 各位上的数字之和为偶数的整数是偶数 各位上的数字之和为奇数的整数是奇数 比如 十进制 平衡三进制 轉換展開 十进制 平衡三进制 轉換展開0 0 01 1 1 1 T 12 1T 3 1 2 T1 3 13 10 3 3 T0 34 11 3 1 4 TT 3 15 1TT 9 3 1 5 T11 9 3 16 1T0 9 3 6 T10 9 37 1T1 9 3 1 7 T1T 9 3 18 10T 9 1 8 T01 9 19 100 9 9 T00 910 101 9 1 10 T0T 9 111 11T 9 3 1 11 TT1 9 3 112 110 9 3 12 TT0 9 313 111 9 3 1 13 TTT 9 3 1小数 编辑 平衡三进制和十进制一样 用小数点分隔整数部分和小数部分 十进制 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 0平衡三进制 T 010T T 1TT1 T 10T0 T 11TT 0 T or T 1 0 TT11 0 T010 0 T11T 0 0T01 0十进制 0 9 0 8 0 7 0 6 0 5 0 4 0 3 0 2 0 1 0平衡三进制 1 0T01 1 T11T 1 T010 1 TT11 0 1 or 1 T 0 11TT 0 10T0 0 1TT1 0 010T 0在平衡三进制中 四舍五入和截位的操作是等效的 分数的小数化 编辑 平衡三进制可以像十进制一样 可以用小数来表示分数 例如 0 1bal3 十进制分數 平衡三进制 十进制分數 平衡三进制1 1 1 1 11 0 01T111 2 0 1 1 T 1 12 0 01T1 3 0 1 1 13 0 01T1 4 0 1T 1 14 0 01T0T11 5 0 1TT1 1 15 0 01TT11 6 0 01 0 1T 1 16 0 01TT1 7 0 0110TT 1 17 0 01TTT10T0T111T011 8 0 01 1 18 0 001 0 01T1 9 0 01 1 19 0 00111T10100TTT1T0T1 10 0 010T 1 20 0 0011十进制分数 平衡三进制 十进制分数 平衡三进制0 1 0 10 11 1 0T1TT1 2 0 1 1 T 11 12 1 0T12 3 0 1 12 13 1 0T13 4 0 1T 13 14 1 0T101T4 5 0 1TT1 14 15 1 0T11T5 6 1 0T 1 T1 15 16 1 0T116 7 1 0TT011 16 17 1 0T111T0101TTT10T7 8 1 0T 17 18 1 00T 1 0T18 9 1 0T 18 19 1 00TTT1T0T00111T1019 10 1 0T01 19 20 1 00TT与十进制 二进制类似 部分分数有两种表达形式 在十进制 二进制中 最小的数码是0 因此小数点后最右边无限循环的0可以省略掉 从而变成一个整数或有限小数 而在平衡三进制中 小数点后最右边无限循环的T不能省略 因而不能变成整数或有限小数 无理数 编辑 无论对于十进制 平衡三进制还是其他以有理数为底数的记数系统 所有的无理数都只能表示成无限不循环小数 下表列出了一些代数无理数和超越无理数的十进制与平衡三进制的表示 代数数 十进制 平衡三进制2 displaystyle sqrt 2 1 41421356237309 1 414 1 11T1TT00T00T01T0T00T00T01T 3 displaystyle sqrt 3 1 73205080756887 1 732 1T T1TT10T0000TT1100T0TTT011T 5 displaystyle sqrt 5 2 2360679774997 2 236 1T 1T0101010TTT1TT11010TTT01T f 黄金分割 1 5 2 displaystyle tfrac 1 sqrt 5 2 1 6180339887498 1 618 1T T0TT01TT0T10TT11T0011T1001 超越无理数 十进制 平衡三进制p 圆周率 3 1415926535897932384626433 3 1416 10 011T111T000T011T1101T11111 e 自然对数的底 2 718281828459045 2 718 10 T0111TT0T0T111T0111T000T11 下面是另一个重要常数欧拉 马斯刻若尼常数在十进制与平衡三进制中的表示 现在仍无法确定其是有理数还是无理数 数 十进制 平衡三进制g 欧拉 马歇罗尼常数 0 57721566490153 0 577 1 TT1TT1T1010001T0T00111TTT0 十进制到平衡三进制的转换 编辑 十进制转化为平衡三进制 可参照下述方法 先圆整后 再分别对整数部分和小数部分进行连除法和连乘法即可 25 4 25 4 圆整 为 25 余 0 4 25 3 8 圆整为 8 余 1 0 4 3 1 2 圆整为 1 余 0 2 8 3 2 圆整为 3 余 1 0 2 3 0 6 圆整为 1 余 0 4 3 3 1 圆整为 1 余 0 0 4 3 1 2 圆整为 1 余 0 2 1 3 圆整为 0 余 1 0 2 3 0 6 圆整为 1 余 0 4 跳入循环 25 410 T01T TT11 3 圆整到最近的整数当然 也可以采用另一种方法 25 410 1T 1011 1TT 1010 11 101T 1T 101 1TT 11 101 10T1 11TT T01T TT11 三进制计算机中数的表示 编辑 計算機的初期發展過程中 蘇聯有一些實驗性質的計算機 是以平衡三进制而不是二进制來設計製造的 其中最著名的是由尼古拉 布魯金索夫和謝爾蓋 索博列夫建造的 Setun 與現在通行的二进制相比 平衡三进制的實驗性設計具有許多計算科學上的優勢 特別是 正負一致性可以加快多位乘法中的進位速率 而捨入截斷當量則會減少對分數做捨入的進位次數 在平衡三進制中 單一位數的乘法表不需用到進位 而加法表只會有兩個對稱進位而不是三個 注 以下部分以 为十进制数万位分隔符 基本概念 编辑 位 trit 对称三进制的数位 字节 tryte 莫斯科大学的Setun以6位为1个字节 单字节整数的表示范围为 364 364 字 word 参照二进制 以2个字节为1个字 单字整数的表示范围为 26 5720 26 5720 整数 编辑 纽约州立大学在1973年开发的测试机Ternac 采用24位表示一个整数 表示范围为 1412 1476 8240 1412 1476 8240 定点数 编辑 定点数的表示方法和整数一样 只是会预先指定小数点的位置 比如采用48位表示一个实数 整数部分 小数部分各24位 则 表示范围为 1412 1476 8240 5 1412 1476 8240 5 精度为3 24 3 54 10 12 浮点数 编辑 Ternac 采用48位表示一个实数 其中尾数42位 指数6位 参照IEEE754的浮点数表示法 对称三进制的表示法如下 1个符号位 整数部分 尾数域41位 小数部分 指数域6位整数部分为1是正的规约数 表示范围为0 5 3 364 0 5 3 405 0 5 3365 0 5 3323整数部分为0的是零附近的数 是非规约数 非规约数的指数固定为 364 指数域并入尾数 表示范围为0 5 3 411 0 5 3 364 0 5 3 364 0 5 3 411 精度为0 5 3 411 逻辑常量 编辑平衡三进制 逻辑狀態 標準三进制1 True 20 Unknown 1T False 0三进制计算机 以三值逻辑为基础 有三个逻辑狀態值 真 假 未知 我们用 1 displaystyle 1 表示真 0 displaystyle 0 表示未知 而 T displaystyle T 則表示假 三进制计算机中信息的表示 编辑三进制计算机中 以平衡三进制为信息进行编码 我们可以以12位为单位 对文字进行编码作为标准信息交换码 STUCII Standard Ternary Unified Code for Information Interchange 其容量为53 1441个字符 约是16bits容量的8 1倍 运算 编辑加减乘除四则运算 编辑 平衡三进制和二进制一样 乘法运算等效于移位叠加运算 单双位平衡三进制加法表 乘法表 除法表 编辑 加法 TT T0 T1 T 0 1 1T 10 1111 0 1 1T 10 11 1TT 1T0 1T1 10T10 T 0 1 1T 10 11 1TT 1T01T T1 T 0 1 1T 10 111 T0 T1 T 0 1 1T0 TT T0 T1 T 0 1T T11 TT T0 T1 T 0T1 T10 T11 TTT0 T1T T10TT T01 乘法 TT T0 T1 T 0 1 1T 10 1111 T11T TT0 T01 TT 0 11 10T 110 1TT110 TT0 T00 T10 T0 0 10 1T0 1001T T01 T10 TT 1 0 IT 111 TT T0 T1 T 0 10 0 0 0 0 0 0T 11 10 1T 1 0 TT1 10T 1T0 11T0 110 100TT 1TT1减法 TT T0 T1 T 0 1 1T 10 11TT 0 T T1 T0 TT T11 T10 T1T T01T0 1 0 T T1 T0 TT T11 T10 T1TT1 1T 1 0 T T1 T0 TT T11 T10T 10 1T 1 0 T T1 T0 TT T110 11 10 1T 1 0 T T1 T0 TT1 1TT 11 10 1T 1 0 T T1 T01T 1T0 1TT 11 10 1T 1 0 T T110 1T1 1T0 1TT 11 10 1T 1 0 T11 10T 1T1 1T0 1TT 11 10 1T 1 0 除法 TT T0 T1 T 0 1 1T 10 11TT 1 1 1 1T 11 TT T1 T T TT0 1 T1 1 1 1 10 T0 T T T T 1TT1 1 T 1 T 1 1T T1 T T 1 T 1T 0 1T 0 1 0 1 1 T 0 T 0 T 0 T10 0 0 0 0 NaN 0 0 0 01 0 T1 0 T 0 T T 1 0 1 0 1 0 1T1T T 1 T 1 T T1 1T 1 1 T 1 T10 T 1T T T T T0 10 1 1 1 1 T111 T T T T1 TT 11 1T 1 1 1注 减法是左列减去顶行 除法是左列除以顶行1从上表中可以看出 双位数相加可能会变成单位数 双位数相减可能会变成三位数 双位数相乘可能可能仍是双位数 这种情况在十进制和二进制中不会发生 多位数的加减法 编辑 就是逐位做加减法 减法 亦可以逐位取反后 换做加法 比如 1TT1TT 1TT1 1TT1TT 1TT1 1TT1TT 1TT1 1TT1TT 1TT1 11T1 T 11T1 T 11T1 T gt TT1T 1 1T0T10 0TT1 1T1001 TTT1 1T1001 TTT1 1T 1 T1 T T1 1T1110 0TT1 1110TT TTT1 1110TT TTT1 T T 1 T 1 1T0110 0TT1 01100T TTT1 01100T TTT1 乘法 编辑 可以采用类似于十进制的各种方法 比如 1TT1 TT T11T 1 1TT 1TT T11T 11 1TT1T T 1TT1TT T11T11 0T0000T 10T 除法 编辑 平衡三进制的除法和十进制的除法类似 但是 大家已经知道 0 5在平衡三进制中有0 11111 和1 TTTT 两种表达式 也就是说 如果被除数超过除数的一半 商的当前位就要置1或T 1TT1 TT T11T 1 T0000T 10T T11T1 1T1T0 1TT1T 111T 1TT1T T00 1 T11T 1 1T1 00 1TT 1T 1T T1T 1T T1T 0 开平方 编辑 平衡三进制开平方和十进制 二进制类似 但和除法一样 要比较的是半除数 例如 1 1 1 T 1 T T 0 0 1T 1 lt 1T lt 11 置 1 1 10 1 0T 1 0T gt 0 10 置 1 1T0 1 T0 110 1T0T 1T0T gt 110 置 1 10T0 10T0 1110 T1T0T T1T0T lt TTT0 置 T 100T0 T0010 111T0 1TTT0T 1TTT0T gt 111T0 置 1 10T110 10T110 111T10 TT1TT0T TT1TT0T lt TTT1T0 置 T 100TTT0 T001110 111T1T0 T001TT0T T001TT0T lt TTT1T10 置 T 10T11110 T01TTTT0 111T1TT0 T001T0T TTT1T110 lt T001T0T lt 111T1TT0 置 0 T 111T1TT00 T001T000T TTT1T1100 lt T001T000T lt 111T1TT00 置 0 T 111T1TT000 T001T00000T 逻辑运算 编辑 以下是平衡三进制逻辑运算真值表 逻辑与 T 0 1T T T T0 T 0 01 T 0 1 逻辑或 T 0 1T T 0 10 0 0 11 1 1 1 逻辑与非 T 0 1T 1 1 10 1 0 01 1 0 T 逻辑或非 T 0 1T 1 0 T0 0 0 T1 T T T 逻辑异或 T 0 1T T 0 10 0 0 01 1 0 T 逻辑合意 T 0 1T T 0 00 0 0 01 0 0 1 逻辑调和 T 0 1T T T 00 T 0 11 0 1 1 逻辑非 T 0 11 0 T另見 编辑三進位 三值逻辑 康托尔集 Setun計算機參考文獻 编辑 Hayes Brian Third base PDF American Scientist 2001 89 6 490 494 doi 10 1511 2001 40 3268 Reprinted in Hayes Brian Group Theory in the Bedroom and Other Mathematical Diversions Farrar Straus and Giroux 179 200 2008 2019 04 22 ISBN 9781429938570 原始内容存档于2019 05 16 2 0 2 1 N A Krinitsky G A Mironov G D Frolov Chapter 10 Program controlled machine Setun M R Shura Bura 编 Programming Moscow 1963 俄语 Stifel Michael Arithmetica integra 38 1544 拉丁语 外部链接 编辑Standard Ternary Logic 页面存档备份 存于互联网档案馆 Balanced ternary 页面存档备份 存于互联网档案馆 取自 https zh wikipedia org w index php title 平衡三進位 amp oldid 75702610, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。