如題。

不才請教...一般我們用的進位都是整數,離散的形式。那麼e進位等可不可以有語言來描述出來?


仿照整數進位,可以定義非整數進位制如下:若eta 進位下 x 的表示是 (x)_eta=overline{d_nd_{n-1}dots d_2 d_1 d_0. d_{-1}d_{-2} dots d_{-m}} ,則 x=sum_{i=-m}^{n} {eta^i d_i}

滿足這一條件的非整數進位表示可以這樣構造: n=lfloor log_eta x
floor, d_n=lfloor x/eta^n 
floor, r_n=x-eta^nd_n

然後就是遞推了: d_i = lfloor r_{i+1}/eta^i
floor, r_i=r_{i+1}-eta^i d_i

舉個例子,圓周率在e進位下的表示 (pi)_e=10.101002020002111120020101120001010202000111012020dots

e在pi進位下的表示

(e)_pi=2.2021201002111122001101201000201120221012001112101dots

非整數進位制雖然不實用但是挺好玩的,比如在 eta 進位下表示一個數所需要的存儲空間是

E(eta,N)=eta lfloor log_eta N
floorsimeq etafrac{log N}{log eta} 。可以證明這個函數在 eta=e 時取最小值。也就是說e進位是最省空間的進位。當然e進位下都無法無限精度地存儲整數,所以實際意義不大,但是3進位的存儲效率的確比2進位高。

另外就是如果按照第一行所說的非整數進位的定義,一個實數的非整數進位表示可能不是唯一的。比如說黃金分割比滿足 varphi^2=varphi+1 ,因此 (100)_varphi=(11)_varphi


開個腦洞吧~

進位制不過是一個整數vector到一個數字mapping,比如常見的進位制下

(1, 2, 3)_{10} = 1 	imes 10^2 + 2	imes 10^1 + 3 	imes 10^0

(4, 5, 6)_7 = 4 	imes 7^2+5 	imes 7^1+6 	imes 7^0 =237

其中,整數vector的每一個元素都小於進位的單位。

進一步,推廣整數vector到實數vector,例如

(1, 1.5, 2)_3 = 1	imes 3^2 + 1.5 	imes 3^1 + 2 	imes 3^0 = 15.5

然後,我們可以推廣每個元素不一定小於進位單位的情況

(1,3.5,2.1)_3 = 1 	imes 3^2 + 3.5 	imes 3^1 + 2.1  	imes 3^0 = 21.6

然後,我們可以吧進位單位也推廣到實數,

(2.1, 3.2, 6.5)_{2.2} = 2.1 	imes 2.2^2 + 3.2 	imes 2.2^1 + 6.5 	imes 2.2^0 = 23.704

然後,關於e進位,就可以自然的定義

(2.1, sqrt 2, pi)_e = 2.1 e^2 + sqrt 2 e^1 +pi e^0 = 22.503...

我們也可以推廣到複數vector在複數進位下的進位制

(sqrt 2, pi, sin 1, 2i, 3)_{1+2i} = sqrt 2 (1+2i)^4 + pi (1+2i)^3 + sin 1 (1+2i)^2 + 2i (1+2i)^1+3 (1+2i)^0 = -47.981 - 34.858i

然後,還可以引入小數點,考慮負指數。

好了,腦洞開夠了,但是有什麼用呢?不知道了。。。

以上


所謂N進位就是把一個數表示為 (pm)sum_{i}^{n}x_{i}	imes N^{i-1}  (x_iin Z,x_i<N) 的形式……

111(dec)=1	imes 10^2+1	imes 10^1+1	imes 10^0

111(oct)=1	imes 8^2+1	imes 8^1+1	imes 8^0

這麼想的話,實數應該都沒問題……

搞個π進位的話,就會變成

111(Pi)=1	imes pi^2+1	imes pi^1+1	imes pi^0


按照現在的定義,實際上只能是正整數作進位,從這個角度上來說自然只能是離散的。

但也正如其他答主所說的,你可以定義其他的(廣義的)進位,只要它是良好定義的。但問題在於,進位本身不是本質的,所以即使你有一個很棒的定義,它也沒有什麼用。


非專業人士路過

整數進位:

十進位下1=0.九循環,其中九=1+...+1=十-1

e進位:

到你了


推薦閱讀:
查看原文 >>
相关文章