好奇用二进制表达圆周率是不是就是11.11111……那岂不是无限循环小数了么?
任何一个数,都能在对应坐标系上到相应的点。对数进行不同的定义、命名、进制转换等,数所在的集合确实可能会有所改变。但无论人为如何操作,都不会改变这个数的存在。
无理数的概念和集合
我们把实数集合范围内所有含无限不循环小数的数统称为无理数,反之为有理数。相对于有理数,无理数无法表示成分数a/b(a、b均为整数)的形式。√2、√3、π、e等都是常见的无理数。
无理数是人为定义的十进制下一个数的集合。这个集合存在与否,不会增加或减少集合内元素的数量。同样的,如果改变进位计数制度,也不会影响原集合内元素的数量。
但是,在改变了进位计数制度之后,该数是否还具有原集合的特性,以及该进位计数制度下元集合的定义是否仍继续适用,这将可能有很大变化。
举例:如π,在十进制下π为无理数。假设人为定义π进制,且在π进制下“无理数”和“有理数”概念仍然适用,那么π还是那个π,但从集合看它已属于“有理数”。
问题在于:π进制下,当前十进制的“无理数”和“有理数”概念是否适用呢?答案不得而知,还要看人为如何定义。
二进制的基础普及
二进制大家并不陌生,我们使用的手机、电脑、电视机都一切科技产品,都与二进制息息相关。不过日常生活中我们更习惯十进制,为了更好的相互理解和沟通,二进制与十进制的相互转换显得有必要基础普及。
在十进制中,当数到达9之后我们不在创造新的字符,而是通过进位的方式重复使用0~9的十个字符。
二进制也是一样,只使用0和1两个字符。当数达到1之后,我们通过进位的方式重复使用这两个字符。
那么我们有如下等式:
十进制与二进行相互转换 通用公式:
[十进制]abcd.efg=(d*2^0+c*2^1+b*2^2+a*2^3)+(e*2^-1+f*2^-2+g*2^-3)[二进制]
二进制下的π转换
在十进制下,无理数是无限不循环小数,我们在计算的时候为了取得一个简洁的结果,往往会取一个有限位的小数代替这个无理数的大小。而所取的有限位的位数,也影响了我们计算结果的精度。
如无理数π,根据最近报道已计算到小数点后31万亿位了。通常对结果精度要求不高的初步估算情况下,会取3.14代替π进行运算;希望结果稍微准确一点的话,会取3.1415926/7代替π;而在火箭发射、宇宙计算都方面,通常要取小数点后35位甚至更多位数来计算。
而由上进制转换可见,无论是十进制还是二进制,原始的数据大小(位数)也决定了转换后的数据大小(位数)。所以对于十进制的π转换乘二进制,关键还要看小数点后的取位。进制数转换公式
那么我们有如下结果:
(D)3=11(B)
(D)3.1=11.000110011001100110011001100110011001100110011001101(B)
(D)3.14=11.001000111101011100001010001111010111000010100011111(B)
(D)3.14159=11.00100100001111110011111000000011011100001100110111(B)
(D)3.14159265358979=11.001001000011111101101010100010001000010110100010001(B)
......
特别说明:以上π的有限取位中,对应的二进制小数也是有限位,没有做近似省略处理。
假设有/无理数的概念在二进制中仍然适用,事实上十进制与二进制的转换中,不会改变原
始数据的有/无理数特性。
综上,圆周率π的二进制表达,并没有将π变成无限循环小数,即π仍然是个无理数。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论