幻如何讓硬件處變不驚?
=光化學(xué)存儲(chǔ)器猜想=
如何用光實(shí)現(xiàn)存儲(chǔ)?作者猜想到,有以下多種方法:
1:設(shè)計(jì)兩個(gè)平行的單面反光鏡,兩者之間的距離足夠遠(yuǎn),至少1千米,然后在一個(gè)平面鏡被抽出,然后存入被編碼成摩爾電碼一樣的光照射,然后把平面鏡放回去,然后讓光在兩個(gè)平面鏡之間來回,到需要讀取時(shí),再把平面鏡抽出,光就被受光器接收。
2:設(shè)計(jì)被特定頻率光照射就會(huì)改變化學(xué)性質(zhì)的光化學(xué)固體或光化學(xué)流體,比如受到紫外線照射就會(huì)變成固態(tài),受到紅外線照射就會(huì)變成液態(tài);又比如受到特定頻率光照射,就變成正四面體方式結(jié)晶,而受到另一種頻率光照射,就變成正六面體方式結(jié)晶,比如用特定頻率光A照射,就成為酒精,用特定頻率光B照射,就成為二氧化碳,使用特定頻率光C照射,就成為環(huán)氧。
3:設(shè)計(jì)成正六面體方式,有兩個(gè)照射面,一個(gè)面是寫入面又稱編程面,一個(gè)面是讀取面又稱反饋面,用特定頻率的光,可以在寫入面改變化學(xué)成分,從而改變折射率,用折射率定義二進(jìn)制的0和1,屬于偏結(jié)晶,只有在特定寫入面才能改變其化學(xué)成分,而不是寫入面,就只能讓光受到折射率作用,還有一個(gè)面能夠用來干嘛呢?
4:可以把數(shù)據(jù)轉(zhuǎn)換為一個(gè)特定結(jié)構(gòu)的透鏡,自帶原點(diǎn),然后用特定數(shù)據(jù)(文件系統(tǒng)原始數(shù)據(jù))來定義照射方式,從而把每一個(gè)球半徑方向的折射率不同換算成數(shù)據(jù),從而能夠把1ZB數(shù)據(jù)刻錄在不到1立方厘米的被三維打印的特殊透鏡中,其本身可以作為密鑰,也可以作為運(yùn)算邏輯器。
=數(shù)據(jù)壓縮算法猜想=
對(duì)折算法,例如10100101(偶數(shù)位)和101010101(奇數(shù)位)。
做三種算法,分別是加法,乘法和乘方法。
0+0=0,0+1=1+0=1,1+1=10(二進(jìn)制的2)
0*0=0,0*1=1*0=0,1*1=1
0^0=1,0^1=1^0=1,1^1=1
也就是結(jié)果=001,則表示兩個(gè)都是0,結(jié)果等于101,則表示一個(gè)等于0,一個(gè)等于1,結(jié)果等于1011,則兩個(gè)都是1
以上算法另有用途。
還有一種表達(dá)方式,把數(shù)據(jù)中分(如果奇數(shù)位,則先把中間位去掉作為原點(diǎn),如果偶數(shù)位,直接中分)
比如10100101,可以記錄為1010取對(duì)稱(完全鏡面對(duì)稱)
比如101010101,可以記錄為原點(diǎn)為1,1010取對(duì)稱(完全鏡面對(duì)稱)
比如10101010,可以記錄為1010循環(huán),也可以記錄為1010和正負(fù)取逆反(原點(diǎn)左邊第一個(gè)和原點(diǎn)右邊的一個(gè)互異,原點(diǎn)左邊第N個(gè)和原點(diǎn)右邊的第N個(gè)互異)
只需要記錄一半的數(shù)據(jù)作為數(shù)據(jù)卡尺,當(dāng)然了,也可以只是用整體的N分之一作為全記錄數(shù)據(jù)卡尺,其他的就看特定位是互同還是互異,只是需要記錄數(shù)據(jù)對(duì)齊方法,比如可以使用1KB數(shù)據(jù)作為數(shù)據(jù)卡尺,然后進(jìn)行比對(duì)。
這種算法最怕有數(shù)據(jù)缺失,也就是不管是數(shù)據(jù)卡尺出問題,還是記錄互異和互同的部分出問題,都會(huì)導(dǎo)致數(shù)據(jù)不可用,只能進(jìn)行試錯(cuò)逆推。
對(duì)于數(shù)據(jù)壓縮,這是缺點(diǎn),然而對(duì)于作為一種密文防止篡改的技術(shù),這是優(yōu)點(diǎn)。
任意數(shù),都可以變成算術(shù):
7?6?5?4?3?2?1?1?2?3?4?5?6?7
先從最大數(shù)到最小數(shù),然后從最小數(shù)到最大數(shù)。
而每一個(gè)?都可以是加法,減法,乘法,次方,這套算法對(duì)于長(zhǎng)度不大的數(shù)據(jù),可能壓縮后長(zhǎng)度比原數(shù)據(jù)還大,然而如果是使用很長(zhǎng)的數(shù)呢?
其中的數(shù)如果相差不大,還能記錄為:
比如9876543210123456789到9876543210123456777,那么就可以節(jié)省掉記錄每一個(gè)運(yùn)算符號(hào)之間的數(shù),直接記錄運(yùn)算符號(hào)就可以了,一般情況下,都是00=+加法;01=-減法;10=*乘法;11=^乘方
記錄了運(yùn)算符號(hào)還不算,每一個(gè)運(yùn)算符號(hào)都有獨(dú)特的運(yùn)算優(yōu)先級(jí),就如同把小括號(hào)改造成了運(yùn)算優(yōu)先級(jí),在這種運(yùn)算優(yōu)先級(jí)中,所有符號(hào)都是同等優(yōu)先級(jí),只有被定義為更高的運(yùn)算優(yōu)先級(jí),才具備更高的運(yùn)算優(yōu)先級(jí)。
當(dāng)然了,可以把所有數(shù)都減去同一個(gè)數(shù),然后只記錄減去該數(shù)之后的差來代表該數(shù),從而節(jié)約存儲(chǔ)長(zhǎng)度,比如上面的9876543210123456777-9876543210123456777=0,可以記錄為0;9876543210123456789-9876543210123456777=12,可以記錄為12;
所有的正整數(shù),都可以換算成該數(shù)除以一個(gè)恰當(dāng)?shù)乃財(cái)?shù)得到的商可以表示為兩個(gè)數(shù)相乘再加上或減去某個(gè)數(shù);
而當(dāng)這些數(shù)并非連續(xù),而且本身也不是很大,那么就可以使用帶有運(yùn)算符號(hào)的方式,來用算法表示該大數(shù)據(jù),使用有理數(shù)算法時(shí),數(shù)據(jù)的最終結(jié)果就是源數(shù)據(jù),使用無理數(shù)算法時(shí),數(shù)據(jù)只出現(xiàn)在有限長(zhǎng)度之內(nèi),然后再對(duì)這些截取的無理數(shù)特定長(zhǎng)度的內(nèi)容,再對(duì)其中的很多位進(jìn)行微調(diào),從而還原出源數(shù)據(jù)。
數(shù)據(jù)長(zhǎng)度很小的算法:正整數(shù)=A;素?cái)?shù)=B;商=C;余數(shù)=D*E+F或D*E-F
逆運(yùn)算就是C*B+(D*E+F或D*E-F)
數(shù)據(jù)長(zhǎng)度相對(duì)多的算法:正整數(shù)=A;可以取兩個(gè)乘方來接近(一個(gè)略大于,一個(gè)略小于)
B^C(加上或減去)D*E(加上或減去)F=A;B^C大于A。
G^H(加上或減去)I*J(加上或減去)K=A;G^H小于A。
逆運(yùn)算就不解釋了,數(shù)學(xué)問題。
這就需要使用人工智能,來逆推一個(gè)足夠大的數(shù),如何用最少的數(shù)和最少的運(yùn)算,來記錄,然后能夠通過這些運(yùn)算式快速的解壓出源數(shù)據(jù)。
而快速減少大量數(shù)據(jù)逆推的方法,就是之前所說的素?cái)?shù)進(jìn)制碰撞方法,數(shù)所有位在特定進(jìn)制時(shí)出現(xiàn)特定數(shù)多少次,然后進(jìn)行順序排列就能還原出源數(shù)據(jù)。
而這種壓縮方式和解壓縮方式,可以研究出專用的運(yùn)算內(nèi)核,從而做成壓縮卡和解壓縮卡,如同顯卡和網(wǎng)卡一樣。
示例:1位二進(jìn)制0和2位二進(jìn)制1,有多少種排列組合?
011;101;110;三種。
0011;0101;1001;1010;1100;五種。
0111;1011;1101;1110;四種。
00011;00101;01001;10001;10010;10100;11000;七種。
00111;01011;10011;10101;11001;11010;11100;
5位二進(jìn)制0和3位二進(jìn)制1,有多少種排列組合?16種。
偶數(shù)為0出現(xiàn)過多少次;偶數(shù)為1出現(xiàn)過多少次;
3的倍數(shù)為0出現(xiàn)過多少次;3的倍數(shù)+1為0出現(xiàn)過多少次;3的倍數(shù)+2為0出現(xiàn)過多少次;
N的倍數(shù)為0出現(xiàn)過多少次;N的倍數(shù)+1為0出現(xiàn)過多少次;N的倍數(shù)+2為0出現(xiàn)過多少次;……一直到N的倍數(shù)+(N-1)為0出現(xiàn)過多少次;
以此類推,就能大量減少排列組合次數(shù)。
比如10254個(gè)二進(jìn)制比特,其中二進(jìn)制1出現(xiàn)過5332次,其中二進(jìn)制0出現(xiàn)過4922次
不換算時(shí)(二進(jìn)制統(tǒng)計(jì)時(shí))
奇數(shù)位的0出現(xiàn)過3791次;奇數(shù)位的1出現(xiàn)過2999次;
偶數(shù)位的0出現(xiàn)過1131次;偶數(shù)位的1出現(xiàn)過2333次;
5332-2333 = 2999
4922-1131 = 3791
3的倍數(shù)位的0出現(xiàn)過多少次;3的倍數(shù)位的1出現(xiàn)過多少次;
3的倍數(shù)+1位的0出現(xiàn)過多少次;3的倍數(shù)+1位的1出現(xiàn)過多少次;
3的倍數(shù)+2位的0出現(xiàn)過多少次;3的倍數(shù)+2位的1出現(xiàn)過多少次;
再擴(kuò)展到N的倍數(shù);N的倍數(shù)+1;N的倍數(shù)+2;……N的倍數(shù)+(N-1);其中對(duì)應(yīng)的0和對(duì)應(yīng)的1各出現(xiàn)過多少次;
換算為三進(jìn)制;
奇數(shù)位;偶數(shù)位;其中A(三進(jìn)制中的0)各出現(xiàn)了多少次;其中B(三進(jìn)制的1)各出現(xiàn)了多少次;其中C(三進(jìn)制的2)各出現(xiàn)了多少次;
3的倍數(shù)位;3的倍數(shù)+1位;3的倍數(shù)+2位;A,B,C各分別各出現(xiàn)了多少次;
再擴(kuò)展到N的倍數(shù);N的倍數(shù)+1;N的倍數(shù)+2;……N的倍數(shù)+(N-1);其中對(duì)應(yīng)的A,B,C各分別各出現(xiàn)了過多少次;
這種可以使用簡(jiǎn)單的單一比特?cái)?shù)據(jù)互換的快速內(nèi)存專用運(yùn)算單片機(jī),就能進(jìn)行快速窮舉,以及進(jìn)行邏輯碰撞;同樣的,N一般都取素?cái)?shù),避免重復(fù)碰撞,比如用了2,又用4,用了5,又用10,就浪費(fèi)了。
想想看,素?cái)?shù)和無理數(shù),在數(shù)據(jù)壓縮中,還能有什么用法?
=作者的話=
如果位移是一種運(yùn)算方式,那么能不能設(shè)計(jì)一種專門只運(yùn)算位移的算法,來進(jìn)行單一算法超高頻率應(yīng)用?就如同精簡(jiǎn)指令集打敗完整指令集一樣,鉆牛角尖如果能夠鉆出個(gè)所以然來,又有何不可呢?