三态对象不是立即能够保存更多信息和处理更大的值吗?我知道处理器目前使用大量的异或门网络,这需要重新设计。
由于我们处于 64 位(我们可以表示 2^63 个可能的状态)计算等效的三元生成可以支持多 30 个十位 log(3^63-2^63) 的数字。
我想检测 +1 和 0 之间的电位差就像检测 -1 和 0 之间的电位差一样容易。
硬件、功耗或芯片密度的某些复杂性会抵消存储和计算能力的任何收益吗?
三态对象不是立即能够保存更多信息和处理更大的值吗?我知道处理器目前使用大量的异或门网络,这需要重新设计。
由于我们处于 64 位(我们可以表示 2^63 个可能的状态)计算等效的三元生成可以支持多 30 个十位 log(3^63-2^63) 的数字。
我想检测 +1 和 0 之间的电位差就像检测 -1 和 0 之间的电位差一样容易。
硬件、功耗或芯片密度的某些复杂性会抵消存储和计算能力的任何收益吗?
构建使用两个以上状态/级别/其他的组件要困难得多。例如,逻辑中使用的晶体管要么是闭合的,根本不导通,要么是全开的。将它们半开将需要更高的精度并使用额外的功率。然而,有时更多的状态用于打包更多的数据,但很少(例如现代 NAND 闪存、调制解调器中的调制)。
如果您使用两种以上的状态,则需要与二进制兼容,因为世界其他地方都在使用它。三是因为转换为二进制需要昂贵的乘法或除法余数。相反,您直接使用四或二的更高幂。
这些是未完成的实际原因,但从数学上讲,完全有可能在三元逻辑上构建计算机。
这里有很多错误信息。二进制有一个简单的开/关开关。Trinary/Ternary 可以使用 2 种模式之一:Balanced aka -1、0、+1 或不平衡的 0、1、2,但不仅仅是开或关,或者更准确地说,有 2 个“开”状态。
随着光纤和扩展硬件的扩展,三元实际上会以更低的成本将我们带到更扩展、更快的状态。现代编码仍然可以与更新的三进制代码结合使用(就像 32 位软件仍然能够在 64 位硬件上使用一样),至少在最初是这样。只需要早期的硬件来检查哪条信息通过,或者软件提前宣布它是一点点还是一点点。代码可以一次发送 3 件,而不是现代的 2 件,功率相同或更少。
使用光纤硬件,而不是现代的开/关二进制过程,它将由 0=off 和其他 2 个开关作为光的正交偏振来确定。至于安全性,这实际上可以大大提高个人的安全性,因为每台 PC 甚至用户都设置为特定的极化“规格”,该极化“规格”只能在用户和目的地之间发送/接收。其他硬件的“门”也是如此。他们不需要更大,只需选择 3 种可能性而不是 2 种。
甚至有一些理论,甚至可能开始对约瑟夫森效应进行一些测试,这将允许使用循环超导电流,顺时针、逆时针或关闭三元存储单元。
直接比较时,三元是基数经济性最高的整数基数,其次是二元和四元。甚至一些现代系统也使用一种三元逻辑,也就是 SQL,它实现了三元逻辑作为处理 NULL 字段内容的一种方式。SQL 使用 NULL 来表示数据库中缺失的数据。如果字段不包含定义的值,SQL 假定这意味着存在实际值,但该值当前未记录在数据库中。请注意,缺失值与零数值或零长度的字符串值不同。将任何内容与 NULL(甚至另一个 NULL)进行比较会导致 UNKNOWN 真实状态。例如,SQL 表达式“City = 'Paris'”对于 City 字段中带有“Chicago”的记录解析为 FALSE,但对于具有 NULL City 字段的记录,它会解析为 UNKNOWN。换句话说,对于 SQL,一个未定义的字段可能代表任何可能的值:一个缺失的城市可能代表也可能不代表巴黎。这是现代二进制系统使用三进制逻辑的地方,尽管很粗糙。
当然,我们每比特可以保存更多数据,就像我们的十进制数字系统可以在单个数字中保存更多数据一样。
但这也增加了复杂性。二进制在许多情况下表现得非常好,使其操作起来非常简单。二进制加法器的逻辑比三进制数(或十进制数)的逻辑要简单得多。
您将无法神奇地存储或处理更多信息。硬件必须更大、更复杂,才能抵消更大的容量。
其中很大一部分与比特最终表示为电脉冲这一事实有关,并且更容易构建简单区分“充电”和“不充电”的硬件,并轻松检测状态之间的转换。使用三种状态的系统必须更准确地区分“充电”、“部分充电”和“不充电”。除此之外,电子产品中的“充电”状态不是恒定的:能量最终会开始“流失”,因此“充电”状态会随着能量的实际“水平”而变化。在三态系统中,这也必须考虑在内。
嗯,一方面,没有比比特更小的信息单位。对比特进行操作是处理信息的最基本和最根本的方式。
也许更强有力的原因是因为制造具有两个稳定状态而不是三个稳定状态的电子元件要容易得多。
旁白:你的数学有点不对劲。一个 64 位的三进制数中大约有 101.4 个二进制数字。解释:最大的 64 位三进制数是 3433683820292512484657849089280 (3^64-1)。要以二进制表示,它需要 102 位:101011010101101101010010101111100011110111100100110010001001111000110001111001011111101011110100000000
这个很容易理解,log2(3^64)大约是101.4376
还有一些理论表明,光纤可以使用光频率(即颜色)来区分状态,从而允许接近无限(取决于检测单元的分辨率)数量的碱基可能性。
逻辑门对于任何基础都绝对是收费的,但让我们以三进制为例:
对于三元异或门,它可以是它正在比较的三个状态中的一个(或任何一个)排他性的,或者是其他三个状态之一。它还可以将三个状态中的两个连接在一起以形成二进制输出。可能性成倍增加。当然,这将需要更复杂的硬件和软件,但复杂性应该会降低尺寸,更重要的是降低功率(读取热量)。甚至有人谈论在纳米计算系统中使用三进制,其中有一个微观的“凸起”、“孔”或“不变”来表示三种状态。
现在,我们遇到了一个 QWERTY 类型的问题。Qwerty 被设计为效率低下,因为打字机制不再存在,但今天使用键盘的每个人都学会了使用 qwerty 系统,没有人愿意改变它。当我们达到二进制计算的物理限制时,三进制和更高的基础有一天会突破这个问题。也许再过 20 年都不会,但我们都知道,我们不可能永远继续每年半年将我们的能力翻一番。
我相信这是有两个原因(如果我错了,请纠正我):首先因为 0 和 1 的值并不是真正的无电流/电流或类似的东西。噪声非常高,电子元件必须能够区分从 0.0 到 0.4 波动的值是 0,从 0.7 到 1.2 是 1。如果添加更多级别,则基本上会使这种区分变得更加困难。
第二:所有布尔逻辑将立即失去意义。而且,由于您可以从布尔门和总和以及其他所有数学运算中实现求和,因此最好有一些可以很好地映射到数学实际用途的东西。假/可能/真之间的任意对的布尔真值表是什么?
另一个主要障碍是需要定义大量的逻辑操作。运算符的数量由公式 b^(b^i) 找到,其中 b 是基数,i 是输入数。对于两个输入的二进制系统,这适用于 16 个可能的运算符。并非所有这些通常都在门中实现,并且一些门涵盖了多个条件,但是所有这些都可以使用三个或更少的标准门来实现。对于一个双输入三进制系统,这个数字要高得多,约为 19683。虽然其中几个门彼此相似,但最终手动设计基本电路的能力几乎是不可能的。即使是工程专业的新生也能够在头脑中设计基本的二进制电路。
螺丝球的回复是正确的,并纠正了这里提供的一些错误陈述。那些回答分数正值的人完全错过了基于0、+1和-1的三元系统的概念。当俄罗斯人在 1950 年代首次建造时,苏联和美国之间的竞争非常激烈。我怀疑两者之间的政治与美国二元对苏联三元的最终受欢迎程度有很大关系。
根据我的阅读,有一些三元计算机正在使用中。莫斯科的大学有一些在使用,IBM 的实验室也有一些。有其他人的参考,但我无法区分它们有多严重,或者它们是否只是为了实验或玩耍。显然,它们的建造成本要低得多,而且它们使用的能源也少得多。
我敢肯定,其中很多都与数字信号的错误检查有关。例如,在量子计算中,这项任务几乎是不可能的,但并非不可能实现非克隆原理,而且还因为状态数量增加了。对于两种状态,错误检查的过程并不简单,但相对容易。对于三种状态,错误检查变得无限困难。这也是为什么排除了具有几乎无限多状态的模拟计算机的原因。
如果您对 Quantum Computing 感兴趣,尽管研究球体封装和量子错误检查,那里有一些非常简洁的东西。
要让电路以二进制以外的方式运行,您必须定义其他状态的表示方式。你提出了一个-1、0和+1的系统,但是晶体管不是这样工作的,它们喜欢让电压或电流只在一个方向上流动。制作一个三态位需要 2 个晶体管,但您可以用相同的晶体管制作 2 个二进制位,并具有 4 个状态而不是 3 个状态。二进制在低电平上更实用。
如果您尝试在电路上设置阈值并改用 0、+1、+2,则会遇到不同的问题。我知道的不够详细,但对于逻辑电路来说,麻烦多于其价值,尤其是当该行业已经完全致力于二进制时。
有一个领域使用多个级别来获得每位以上 2 个状态:MLC闪存。即使在那里,级别的数量也将是 2 的幂,因此可以轻松地将输出转换为二进制以供系统的其余部分使用。
如果我们使用 3 个状态,那么由此产生的主要问题是
希望我有说服力
我认为三元会更有效。它只是从未流行过。二进制登上舞台,现在切换到三进制将改变我们所知道的一切。
当然,但是三元“位”(tet?)会更复杂,您仍然会存储相同数量的信息,只是在 base3 中而不是 base2 中,并且如果两态组件的强大功能就是简单性。为什么不直接建立一个 10 州基地 10
二进制计算与二进制 AND、OR 和 NOT 门有关,它们非常简单并且能够组合成任意复杂的结构。它们实际上是您的计算机进行的所有处理的基石。
如果有严重的情况需要切换到三进制或十进制,那么他们会这样做。这不是“他们像那样尝试过它只是卡住了”的情况
我认为它更多地与可编程性、条件语句以及晶体管的有效使用和功能有关。很明显,如果有电流通过电路,嵌套的 IF 是正确的,但如果解决方案可以通过一千条不同的路径实现,程序怎么知道该怎么做呢?人工智能很有趣,其中记忆和学习远比强大的计算能力重要。