第1268章 節省空間

也難怪瓊不知道。

浮點運算這東西是在計算機發展一段時間後才針對有限存儲空間提高其靈活性和運算範圍發明出來的。

此時的瓊還有遠在日不落的圖靈,他們雖然有足夠的智商發明這種運算,但此時他們的注意力主要集中在“克里斯托弗”本身,而且主要針對其解碼方面的用途,於是就沒有考慮到這一點。

“這麼說吧!”王學新帶着幾個人來到防空洞門邊的辦公桌前,拿過桌上的紙和筆一邊寫着一邊解釋道:“如果我們使用16位運算帶小數的數據,按常規的運算方式應該是將一半的存儲單元也就是7位配給整數,另8位分配給小數,對嗎?”

“沒錯!”瓊點了點頭。

之所以整數位只有7位,是因爲數據通常有正有負,要空出一位表示正負(0表示正,1表示負),這一位也被稱作是符號位。

“這樣的存儲法很多時候會出現空間和時間的浪費!”王學新接着說道:“它的整數位固定只有7位小數位固定只有8位,如果有個數據是123456678,雖然它只有8位數而我們的存儲單元有16個,但卻存不下這個數字!”

這是因爲整數位只有7位的原因,所以一個八位數已經超出它的儲存範圍了,儘管小數位的8個儲存單元一個數字都沒存。

同理,如果整數位一個數字都沒有,小數位卻在第九位上,也無法有效儲存進行運算。

瓊點頭道:“這就是我想說的,我們應該要擴展到32個存儲單元,之前用機械零件要做到這一點很困難,現在改用繼電器做零件了,同樣的條件完全能實現32位爲什麼不做?”

“等等,瓊!”王學新說:“你先聽我說完!”

瓊點了下頭然後就不說話了。

王學新接着說道:“這是傳統的儲存方式,我們姑且把它稱作定點運算。浮點運算的意思是,我們把其中幾位,比如四位用來存儲次方……”

“存儲次方?”瓊吃驚的望向王學新:“但它們通常沒有次方!”

陳班兩人也疑惑不解,他們不明白這樣轉換會有什麼用。

王學新舉了個例子:“比如剛纔的數據12345678,我們爲什麼不能把它變成1.23456678乘以10的7次方?然後我們的整數和小數的存儲空間就可以隨意利用,簡單的說,就是小數沒有用到的存儲空間就可以用這方法變換到整數利用,整數沒有用到的存儲空間可以變換到小數去利用!”

瓊聽着不由恍然大悟。

“說得對,團長同志!”瓊說:“這樣一來,任何時候我們的存儲空間都有11位,可以存下任何一個11位數而不是定點運算的7位整位或8位小數。”

“是的!”王學新點了點頭,說:“實際上,如果把它轉換爲二進制並把所有的數字都轉換成1.XXXX的形式並只存小數點後的數字的話,我們還可以多存一位也就是12位!”

這有點難理解。

之所以能多存一位,是因爲二進制中的數字不是0就是1,而第一位永遠都是1……第一位如果是0的話就不需要寫出來了,就像十進制裡的一個整數前面不可能有零一樣。

如果第一位永遠是1,那就不需要浪費一個空間把它存進存儲單元裡,於是就省下了一個存儲單元做到了存儲單元最大化利用。

具體到運算時要做的,就是不要把這個沒有存進去的“1”漏掉……現代編程運算可以在程序中把“1”加上計算,而這時期的運算,就是在存儲單元之間多接幾根電線增加些進位規則。

王學新接着又說道:“確切的說,不只12位!”

瓊一愣,然後馬上就明白了,她瞪大了眼睛連連點頭:“是的,不只12位!應該是……”

瓊稍加思索,就興奮的說:“極端情況下,應該是20位,對嗎?團長同志!”

王學新點了點頭,瓊不愧是瓊,一個日不落的數學家,她馬上就知道小數點可以移動的另一個好處,就是還可以增加運算精度。

比如一個數據是0.00000001111111111111,定點運算是沒法存這個數字的,但浮點運算只需要把它變成1.111111111111,再將小數點移了多少位存在次方存儲單元,12個存儲單元就恰好可以把這個數存下並進行運算。

這說白了其實就是二進制的科學計數法,只不過要想辦法把數據準確的存進有限的空間裡所以纔多出了七七八八空間還有位數之類的玩意。

班、陳兩人聽着有些迷糊,但看到瓊一臉興奮的樣子,他們就知道王學新說的沒錯,只是他們沒聽懂而已。

不過在這方面王學新並不擔心,因爲班、陳兩人只是一時沒習慣二進制的計算也沒習慣將其與計算機的存儲單元聯繫在一起,所以纔有些半懂不懂聽得不是很明白。

“太棒了團長同志!”瓊興奮的擁抱了王學新一下,說:“這方法使我們可以在不增加存儲單元的情況提高運算精度和運算範圍,太不可思議了,你是怎麼想到這方法的?”

“這……”王學新有些尷尬的看了看班陳兩人一眼,回答:“這是……你知道的,我們在研發計算機的時候就碰到這個問題,爲了儘可能的降低故障率,我們只能想盡辦法減少零件!”

王學新這個解釋合情合理。

零件越多故障率越高,反過來零件越少故障率當然就越低。

八路軍的工業水平不行零件故障率高,就要想盡辦法減少零件以降低故障率,於是就要在算法上動腦筋。

不過當然,這一切都沒有發生,它們只是王學新虛構出來的。

王學新會知道這些,只不過是佔了點現代人的便宜罷了。

有時候王學新在想,如果這些都能上,那是不是自己在大學時學的那什麼C語言也能用上?

不過想想就知道不可能,這時候計算機纔剛出來,用的都是低級語言甚至連低級語言都沒有,需要手動連線控制……

像C語言這種東西那肯定是用不上的。

第643章 懷璧其罪第852章 射程第50章 排隊第31章 白心韌化技術第450章 討價還價第1367章 V300第1031章 火車站第1710章 四平第1677章 五個月第614章 兩棲登陸船第1701章 集成電路第926章 趕盡殺絕第1512章 坦克第820章 鐵甲列車第310章 火箭炮連第1350章 空爆引信第232章 不急第1732章 實則虛之第217章 繳獲97式第1448章 目標第576章 預設諸元第491章 炮戰第811章 要飛機第799章 蘇教授第269章 鋼珠雷第355章 沙袋第732章 戰果第1416章 另有所圖第1435章 輿論壓力第1249章 “突圍”第820章 鐵甲列車第1016章 引蛇出洞第413章 投靠第1353章 圍而不攻第821章 死衚衕第422章 國際視野第143章 策反第154章 火車輪軸第798章 收復鄭州第1391章 不可能的攔截第1520章 撤退第728章 撞衫第34章 子彈改地雷第1005章 必救之地第322章 東方馬奇諾第321章 中條山第838章 總攻第809章 鐵路第1863章 登陸艦第959章 難處第457章 合作第1261章 克里斯托弗第1767章 一唱一和第1312章 兩難第837章 缺口第43章 小雷大學問第34章 子彈改地雷第959章 難處第1103章 夾擊第350章 潰退第1851章 虛晃一槍第250章 交易第1605章 運輸線第1063章 妙計第764章 訓練第958章 靈活第742章 勸說第1226章 撤退第469章 反坦克壕第1480章 激光廢稿討論第1542章 牆倒衆人推第775章 隨機應變第1664章 航空母艦第558章 學習能力第1697章 分割包圍第90章 打算第130章 防禦體系第1495章 問題第1095章 利源村第323章 兩手準備第319章 彈藥第1364章 直升機第842章 上當第252章 再接再厲第1470章 滑膛炮第580章 衝動第1135章 火力優勢第556章 M79第1682章 增加速度第263章 鋼絲第670章 布價第149章 輪胎第430章 運城第1263章 合作第1158章 因地制宜第932章 藉口第17章 打草驚蛇第1793章 退路第542章 保密
第643章 懷璧其罪第852章 射程第50章 排隊第31章 白心韌化技術第450章 討價還價第1367章 V300第1031章 火車站第1710章 四平第1677章 五個月第614章 兩棲登陸船第1701章 集成電路第926章 趕盡殺絕第1512章 坦克第820章 鐵甲列車第310章 火箭炮連第1350章 空爆引信第232章 不急第1732章 實則虛之第217章 繳獲97式第1448章 目標第576章 預設諸元第491章 炮戰第811章 要飛機第799章 蘇教授第269章 鋼珠雷第355章 沙袋第732章 戰果第1416章 另有所圖第1435章 輿論壓力第1249章 “突圍”第820章 鐵甲列車第1016章 引蛇出洞第413章 投靠第1353章 圍而不攻第821章 死衚衕第422章 國際視野第143章 策反第154章 火車輪軸第798章 收復鄭州第1391章 不可能的攔截第1520章 撤退第728章 撞衫第34章 子彈改地雷第1005章 必救之地第322章 東方馬奇諾第321章 中條山第838章 總攻第809章 鐵路第1863章 登陸艦第959章 難處第457章 合作第1261章 克里斯托弗第1767章 一唱一和第1312章 兩難第837章 缺口第43章 小雷大學問第34章 子彈改地雷第959章 難處第1103章 夾擊第350章 潰退第1851章 虛晃一槍第250章 交易第1605章 運輸線第1063章 妙計第764章 訓練第958章 靈活第742章 勸說第1226章 撤退第469章 反坦克壕第1480章 激光廢稿討論第1542章 牆倒衆人推第775章 隨機應變第1664章 航空母艦第558章 學習能力第1697章 分割包圍第90章 打算第130章 防禦體系第1495章 問題第1095章 利源村第323章 兩手準備第319章 彈藥第1364章 直升機第842章 上當第252章 再接再厲第1470章 滑膛炮第580章 衝動第1135章 火力優勢第556章 M79第1682章 增加速度第263章 鋼絲第670章 布價第149章 輪胎第430章 運城第1263章 合作第1158章 因地制宜第932章 藉口第17章 打草驚蛇第1793章 退路第542章 保密