百科问答小站 logo
百科问答小站 font logo



能否使用3的指数来减小二进制文件存储的体积? 第1页

  

user avatar   bei-ji-85 网友的相关建议: 
      

话说,虽然题主的表达方式确实是错的,在嘲笑题主的同时,但难道各位不知道3进制确实比2进制更节省存储空间吗?更接近e的进制是更节省空间的,显然3比2更接近e,所以三进制节约空间是有道理的,只不过题主他看错了方向。

1到100000这个范围的正整数里,2进制更省空间的有8488个,3进制更省空间的有76226个,其余15286个是占空间相等的情况。

当然了,三进制补码很难看,估计会被人骂死。换了我,我也不喜欢用三进制,太反人类了。

-----------------------------------------

看来很多人还是没明白,我再补充一些:

本来想自己算,但发现有人已经给算过了(zz from newsmth e进制是信息表示的最优解):

假定总共有n位,每位m个状态,m*n=v
在v一定时,使得m^n最大
也就是k(n)=(v/n)^n最大
考虑一般情况下
ln(k(n))=(ln(v)-ln(n))*n=ln(v)*n - ln(n)*n
对n求导 ln(v) - (n*1/n + ln(n)) = ln(v) - 1 - ln(n)
解得ln(n)=ln(v)-1是k(n)唯一的极值点
易知是k(n)最大值点
所以n=v/e m=e时,k(n)最大

所以数学上就可以证明三进制比二进制更省空间。

有人说二进制存储器更便宜,那是因为现代计算机已经选择了二进制,所以硬件制造商自然会寻找更廉价的二进制存储设备,这是一个互相影响的过程。


user avatar    网友的相关建议: 
      

是时候设计无穷大进制了
这样就可以把任意信息压缩到一个符号

香农,给,吃苹果



Update 1: 题目现在这个表述的话

那其实是压缩编码...

压缩的代价是解码表会变大...

和那个 进制最优不是一回事...


Update 2: 说个题外话...

Code Golf...现在不堪入目

就是被这种破压缩法搞的...

J语言,Befunge语言还算好的...

Jelly(Python),MATL(Matlab),Japt(JavaScript)这种什么玩意儿...

一个巨大的编码表,用UTF字符代替函数...

为了短而短,恶心死了...




  

相关话题

  举办个《中国好码农》节目如何? 
  为什么 Unix 一切皆文件的设计这么成功,而 C++ 统一的流式 IO 则不甚成功? 
  阅读丘成桐自传《我的几何人生》有什么感悟? 
  请问这个级数是如何计算的? 
  对「数学就是为了刷掉那 70% 的人」有什么感悟或亲身体会吗? 
  数学为什么没有列在四大天坑专业中? 
  目前中国程序员和美国程序员的差距在哪里? 
  C语言中,write(1,buf,N)与write(0,buf,N)在底层存在什么样的区别? 
  十赌九输这句话有根据吗? 
  为什么现在招聘程序员大多要求 Java / C / C++ 技能,而 C# / .NET 不受青睐? 

前一个讨论
中国开发一个主流的手机系统到底能有多难?
下一个讨论
为什么从合肥到济南的高铁经常晚点?





© 2024-05-17 - tinynew.org. All Rights Reserved.
© 2024-05-17 - tinynew.org. 保留所有权利