usohu

三进制与二进制属于各自独立的底层架构,这是确凿无疑的,既然华为已经申请了专利,那

三进制与二进制属于各自独立的底层架构,这是确凿无疑的,既然华为已经申请了专利,那它必然是独立的架构。但有一点我搞不明白,就是在它为三进制的情况下,转换并输出为十进制的时候,是否会存在误差呢?

这个问题问得贼实在!咱得掰开揉碎了聊。三进制计算机用0、1、2三个状态干活儿,二进制靠0和1打天下,底层电路设计、运算逻辑那绝对是两码事,华为敢申请专利,技术独创性这块儿没跑。可你担心十进制转换出误差,这心思我懂——毕竟咱人类最熟悉的还是十根手指头数出来的十进制嘛。

进制转换的本质是数学,不是玄学 甭管你是二进制、三进制、还是八进制十六进制,想把一个数转成十进制,核心就是按“权”展开再求和。比方说,三进制数 “121” 转十进制: 1 * (3^2) + 2 * (3^1) + 1 * (3^0) = 1*9 + 2*3 + 1*1 = 9+6+1=16。 瞧见没?只要数学上定义清楚,转换过程就是纯计算,跟1+1=2一样确定无疑。只要是整数,甭管从几进制转十进制,理论上都不会有误差! 整数在数学上是离散的、精确的点,转换就是换个马甲重新表达同一个值。

麻烦出在小数和浮点数这儿! 这才是你担心误差的根源地带。为啥?因为很多十进制小数,在二进制或三进制里,可能是无限循环的!举个最经典的例子: 十进制 0.1 (十分之一),转成二进制是 0.0001100110011... (无限循环)。 计算机存储位数有限啊,不可能存无限长,只能截断或舍入,这就产生了表示误差。 那三进制呢?十进制 0.1 转三进制是啥?算一下:0.1 (十进制) = 0.002200220022... (三进制,也是无限循环)。 看见了没?它在三进制里也是个无限循环小数!同样受限于计算机存储位数,也得截断或舍入,误差还是跑不掉。

所以,误差的锅,不该让“三进制转换”来背! 问题的根子在于:有限存储精度 VS 无限精度的数学现实。这个矛盾,二进制有,三进制有,其他进制也一样有!只要你计算机用有限位来表示数,碰上这种在目标进制下是无限循环的小数,误差就注定存在。这跟你从哪套底层架构(二进制、三进制)出发去转换,关系不大!关键看这个数在“目标进制”(这里指十进制)下是不是能精确表示。十进制小数能精确表示的(比如0.5,0.25),转过去就没问题;不能精确表示的(比如0.1,0.2),转过去就可能掉精度。

华为三进制的“误差”疑虑,可能想岔了方向 你琢磨的误差,更可能发生在这些地方: 1. 内部运算累积误差:三进制计算机做浮点数运算(加、减、乘、除),每一步都可能因为舍入产生微小误差。算得越多,误差可能像滚雪球一样累积变大。但这也不是三进制独有的,二进制浮点运算同样有这毛病(想想著名的 0.1 + 0.2 != 0.3)。 2. 接口转换的精度损失:三进制计算机最终要把结果“呈现”给人看或者给其他十进制系统用。在输出那一刻,如果软件设计时没处理好浮点数格式转换(比如从内部高精度三进制浮点格式转成标准的 IEEE 754 双精度十进制浮点数),可能会引入额外的舍入步骤,导致精度损失。但这属于软件实现层面的问题,不是三进制数学原理的缺陷! 好的软件设计可以最大程度减少这种损失。

批判点来了:过度聚焦“进制转换误差”,可能忽略了真正的价值与挑战! 纠结“三转十有没有误差”,有点像担心电动汽车的轮子是不是圆的——基础数学保证了转换规则本身没问题,误差是有限存储和浮点表示的通病。华为搞三进制,真正的价值在于探索超越冯·诺依曼架构的新可能: 理论潜力:三进制能更自然地表示“真/假/未知”(-1, 0, 1),在某些逻辑运算和AI领域可能有优势。 能效比?:传说中三进制表达信息效率更高(用更少的位数表示更大的数),可能降低某些运算的复杂度,进而省电?但这需要硬件实测验证。 抗干扰?:三态信号(比如用正电压、零电压、负电压)理论上抗噪能力更强? 真正的挑战在于: 生态荒漠:软件、工具链、开发环境几乎为零,从零搭建成本巨高。 硬件实现:稳定、可靠、低成本的三态器件(晶体管/忆阻器?)大规模生产是否可行? 性能优势能否兑现?:理论上的潜力,在真实的芯片上跑起来,真能干翻成熟的二进制芯片吗?这才是最硬的骨头!

误差的担心,基本可以放下。 三进制转十进制本身不会带来“额外”的、进制特有的误差。误差是浮点数表示和有限存储精度的“胎里带”问题,所有数字计算机都逃不掉。

各位读者你们怎么看?欢迎在评论区讨论。

评论列表

追  梦
追 梦 36
2025-07-08 10:19
三进制早在几十年前,苏联就已经使用了,没什么大惊小怪拿出来炫耀的,当年还有3元钱的纸币呢。

行水流云 回复 07-09 18:50
二进制几千年就出来了,并且大量使用了

哎妈呀 回复 07-23 19:04
是的,什么空间折叠技术,空间之门,时空跳跃美国多年前就都搞出来了

aaaaa
aaaaa 16
2025-07-08 07:53
信不信?在美欧这事就成了科技之光!
冰封·沉默
冰封·沉默 14
2025-07-14 12:31
华为专利三进制是:-1,0,1,不是你说的:0,1,2主题都错!

暗夜 回复 老姜 08-02 13:08
所以我前面回复他这两个不是一回事。[滑稽笑][滑稽笑][滑稽笑]

老姜 回复 08-01 07:50
人家不是说他的三进制只有-1,0,1吗?

微宝
微宝 14
2025-08-14 17:52
我普通人不懂深奥的,照我看来和进制没多大关系,都是数学转换,重要的是一个单元中有-1、0、+1三种状态,这样就能比拥有同样多单元的0、1多出一半的状态表现,所以优势应该是同样单元条件下表达东西更多。
老裆易撞
老裆易撞 14
2025-08-14 20:01
传输怎么解决,光纤数据用有光无光代表0和1,光盘用是否反光代表0和1,脉冲信号用有无代表0和1,最终还得转二进制,没那么容易的。
上善若水
上善若水 13
2025-07-30 13:03
只能是底层3进制,外层与其他系统交互还是得2进制,不然这个生态环境大改太难了。好处就是提高性能。但是与其他提高性能的方案相比有多大优势不好说,只能做出来看效果。这就是科技创新必须要投入的成本,成败都是正常的,无可厚非。

大飞 回复 08-14 06:31
一样的,只是目前大家熟悉了二进制而已,二维和三维,而且理论来说存储空间更小

想你的365天
想你的365天 13
2025-08-13 09:25
华为搞的三进制,不是我们理解的那种三进制。区别很大,-1,0,1。
沉默不是金
沉默不是金 10
2025-07-26 19:45
道生一一生二三生万物。个人感觉三进制应该比较更先进。

用户83xxx22 回复 08-03 14:29
遗传基因链就是三进制的。

Robot
Robot 10
2025-07-26 04:20
什么都不懂,却去胡说八道
潮流女人时尚包
潮流女人时尚包 9
2025-07-20 09:04
三进制 -1 0 +1 ±电压在数字门电路中,并不复杂,很广泛的应用呀,只不过可能 I/0 要从新设计了。

无声狂啸 回复 07-31 23:13
当年苏联就搞过三进制计算机,效果还不错。但是当时的晶体管和电子管技术对三进制的支持不好,没法堆规模和提高运算速度

无声狂啸 回复 07-31 23:14
所以三进制的问题不是逻辑们设计难度,而是晶体管设计和制造难度

云侠
云侠 8
2025-07-08 16:48
底层进制与高级语言程序没关系,只是CPU内微代码要适应。
用户当前在线
用户当前在线 8
2025-07-09 00:15
从0开始建起整个三进制生态才是难,甚至不可能,除非计算机界出现颠覆性变革
张淙钧
张淙钧 8
2025-08-03 15:06
科技树应该有多种,只有攀不同的科技树,才能岀现换道超车的能。
战争2013
战争2013 7
2025-07-08 14:07
三进制不必各个部分都是三进制,比如存储可以是二进制,只要有利的部分是三进制就可以了。

暗夜 回复 07-25 19:12
那更麻烦。互通数据的时候进制还要换来换去。

帅哥他爸
帅哥他爸 6
2025-07-27 10:02
3进制在数字化处理信号时很有用,绝大部分信号都可以通过高速采样量化成减小不变增大三种情况(-1 0 +1)。
三生三世对对对
三生三世对对对 6
2025-07-26 06:04
为啥要转10进制?三进制可以缩短字符串,提高读取速度,等于硬件不动的情况下,提高运行效率。
从文明到野蛮
从文明到野蛮 5
2025-07-27 04:18
有电没电和负相,用三种确定的物理状态。可以确定直接表现6种逻辑状态,这在2进制系统要经过叠加计算才能实现。理论上程序执行可以快好几倍。但硬件的逻辑单元相比现有架构应该呈现指数类增长。硬件成本过大
天天下雨
天天下雨 5
2025-08-09 05:32
1三进制本身就兼容二进制,生态上不会太困难,2现在软件工程师是以前100倍以上,有Al编写速度更是10倍,只要硬件发布,编程语言软件发布,5年就能成就生态,3特殊领域应用专用更快,
用户10xxx85
用户10xxx85 5
2025-08-19 22:30
二进制对应的是二级管,对应的是cpu,华为的cpu也是二级管的,就也是二进制的,搞3进制就等于神经病,搞来干什么?有什么意思?二进制就直接对话机器,然后就转64位,你这个3进制是干什么的?
晚风
晚风 4
2025-07-08 13:45
外行人在这瞎猜,猜来猜去也猜不明白还误导人!
好人好事
好人好事 4
2025-07-21 18:43
三进制的比特币,小编,赶紧的!
侯鹿
侯鹿 4
2025-08-03 06:41
三进制cpu的发展道路可以有这样3条:1,在三进制cpu专用软件不成熟时底层数学运算时屏蔽-1,直接用二进制进行运算。2,用二进制计算机模拟三进制计算机内核,模拟三进制内核进行三进制编程并校验。3,单独开发三进制内核以及三进制编程[静静吃瓜][静静吃瓜][静静吃瓜]1,明显浪费算力。2,模拟三进制的性能真心不想说。3,道路远且长[哭笑不得][哭笑不得][哭笑不得]
迷迷糊糊就走到了这个岁数
迷迷糊糊就走到了这个岁数 3
2025-07-07 18:55
确实,进制在于硬件。
用户75xxx42
用户75xxx42 3
2025-07-11 15:39
搞个3进制+2进制就变八卦了,,直接8进制,,打游戏保证电脑不卡
wushenjian
wushenjian 3
2025-07-20 05:18
你不是这行业的不用明白,不用质疑。如果你是这行业的就太菜了
『冉』圣骑士
『冉』圣骑士 3
2025-08-02 09:19
一组二进制,一组三进制,或者多核的话,一半核用二进制,一半核三进制。以目前的芯片制程来说,一半的二进制完全可以保障芯片的对外链接了,三进制负责内部运算,剩余的一半二进制负责协调运算
轩轩
轩轩 3
2025-08-03 14:06
a~aswwaa~wa
言贩子
言贩子 2
2025-07-07 19:39
加把劲,研究一下蛋白质计算机,用碱基对来计数,4种碱基分别表示00,01,10,11,存储密度大得多。

趙雄托你帮我 回复 07-08 17:42
那个好像叫生物计算机

用户10xxx66
用户10xxx66 2
2025-07-10 15:58
不是很懂,但能不能将三进制搞成特殊二进制,也就是说三进制依然用0,1二进程计算,而3则进行特殊计算,例如解决二进制敝端的计算。具体不懂,嗐说一下
用户51xxx96
用户51xxx96 2
2025-07-26 11:01
好像是找不到具有三种稳定状态的材料,技术上是没有问题的
zxyemoren
zxyemoren 2
2025-07-30 11:04
其实就是不知道如何把我们现在很多的数据(2进制)的如何快速转变为3进制,还有就是如何标识是2进制数据还是3进制数据?
菜ゞ尐白
菜ゞ尐白 2
2025-07-31 21:03
[哭着笑]这个的难点不在进制上,毕竟编译器的活可以优化,主要是,这去哪找这种材料丫?
唐吉可德
唐吉可德 2
2025-07-31 13:15
我没记错的话好像3进制通俗解释不是0 1 2吧,记得好像是-1 0 1
用户16xxx86
用户16xxx86 2
2025-08-01 12:30
必要时可以转化为2个2进制独立回路。
铁木真
铁木真 2
2025-08-03 05:58
说了半天,学完汇编语言的自己都明白
用户17xxx16
用户17xxx16 2
2025-08-09 15:55
直接整十进制计算机,用0-9十种状态表示
1399
1399 1
2025-07-12 07:39
文科生自以为的解读高科技,笑掉个牙
用户27xxx38
用户27xxx38 1
2025-07-21 06:45
文科生试图理解理科生的专长
用户10xxx16
用户10xxx16 1
2025-07-26 20:23
这就是骗局
知了
知了 1
2025-07-26 22:05
硬件没有这三态,搞出来有什么用。

用户16xxx86 回复 08-01 12:32
-1 0 +1不是三态吗?

洁净的空气
洁净的空气 1
2025-07-26 09:49
敢用三进制,解码器内存得多大啊
留一半清醒一半醉
留一半清醒一半醉 1
2025-07-31 08:24
不用纠结,让军队先去发展吧。
用户10xxx32
用户10xxx32 1
2025-07-29 17:55
310,玩足彩的都知道
大盘计算所所长
大盘计算所所长 1
2025-07-31 18:29
直接搞十进制更好,只要解决电压判定问题就OK了。
用户10xxx46
用户10xxx46 1
2025-08-01 12:34
三进制描述0.1显然和你写的不一样
重庆年味集
重庆年味集 1
2025-08-02 00:37
还0 1 2,三进制都没搞懂
云侠
云侠 1
2025-08-03 18:24
这有啥大惊小怪,光、量子计算机可以是n进制的。
用户11xxx85
用户11xxx85 1
2025-08-06 10:03
就是想知道-1,准备怎么用语言描述?
约翰.覃
约翰.覃 1
2025-08-15 06:54
我想问一下收益怎么算的?
王辉
王辉 1
2025-08-19 23:34
十进制0.3333333……无限循环小数化成三进制为0.1,成了有限小数了