编程语言-为什么编程语言的计算数值有最大上限?
可能涉及计算机原理。
我的疑问是这样的:
计算机计算难道不是基于运算法则的么?
比如: for(i=1;i>0;i++){alert(i);} ,
按法则的话,只要十进制下进行加法运算,满10高位进1不就行了么,这样应该可以永无止境的啊。
但是,为什么所有的语言都有个计算上限呢?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
因为存储(内存)是有限的,1个比特位只能表示2个数,10个比特位只能表示1024个数。
请看GMP等任意精度的整型实现,大小只受限于内存。也有语言在语言级别提供任意精度的整型,例如Haskell的Integer类型()。
大部分语言都会提供和CPU的机器字大小相等的整型(例如Haskell的Int类型),这多数是为了性能。