幾十年前的巨型計(jì)算機(jī)不如十幾元錢的計(jì)算器?科技發(fā)展沒那么快!
![]()
軍武數(shù)據(jù)庫(kù)
#頭號(hào)創(chuàng)作者激勵(lì)計(jì)劃#
這是W君評(píng)論監(jiān)控系統(tǒng)捕捉到的一條信息,deepseek直接給判定為不良內(nèi)容刪除(標(biāo)紅)掉了。
不過,從“認(rèn)知”這件事上出發(fā)還是可以聊聊的。
聊正題之前先說今天的定場(chǎng)詩(shī),其實(shí)也是“認(rèn)知”的問題。早上吃早點(diǎn)的時(shí)候看了一段視頻。
一大哥拿著自己的藏品找鑒寶大師去鑒定,人家說是“新的”之后當(dāng)場(chǎng)發(fā)飆……這其實(shí)就是典型的升斗小民認(rèn)知障礙的事情了。揣著自己不知道從哪里幾百塊錢淘么到的一件“古董”,找一個(gè)還算知名的大師做一個(gè)“鑒定”,抱著逆天改命的心思迎來(lái)一盆冷水,最終敗興而歸,甚至心理破防。
但這件事所謂的古董是真是假重要嗎?在W君看來(lái)真沒這么重要,重要的是所謂情緒價(jià)值,對(duì)這類人來(lái)說,這“寶貝”不是器物,是希望的投射,是他們?nèi)松嬉u夢(mèng)里的主角道具。
它就像個(gè)懸浮在生活重壓之上的“想象入口”,指向的是“也許我不是個(gè)普通人”的幻覺,是“老天終于眷顧我一次”的慰藉。
你要是說它不值錢,你就等于是對(duì)這個(gè)人整個(gè)人生故事的否定,這能不破防嗎?鑒寶大師要是情商高,說些模棱兩可的話,倒是可以助力這位大哥在錯(cuò)誤的路上充滿信心的走下去。
但這樣的劇本并不專業(yè)!
昨天,和朋友討論新寫的文章,有這么一段對(duì)話:
W君覺得這是一條自己堅(jiān)定要走下去的路。
好了不王婆賣瓜,咱們進(jìn)入今天的正題。
所以我們今天要聊的,并不是“計(jì)算器和大型機(jī)誰(shuí)更快”這種幼稚的問題,而是——你到底有沒有理解什么叫“計(jì)算”本身”。
W君自己電腦邊上只要伸出手就可以拿到的計(jì)算器是這個(gè):
要說性能什么的吧,也就是能看看電子書和玩玩小游戲罷了。
講真,W君這個(gè)計(jì)算器并不是什么先進(jìn)的玩意了,之所以一直放在手邊就是因?yàn)榉奖悖戧懤m(xù)續(xù)的把一些自己常用的一些計(jì)算過程進(jìn)行存儲(chǔ),到時(shí)候求值的時(shí)候方便一些。這臺(tái)計(jì)算機(jī)也算是勉勉強(qiáng)強(qiáng)甩出現(xiàn)在很多“十幾塊錢的計(jì)算器”幾條街了。
但就這個(gè)計(jì)算器而言,和世界上1946年生產(chǎn)出來(lái)的第一臺(tái)計(jì)算機(jī)ENIAC去比性能依然沒有ENIAC強(qiáng)。
雖然,ENIAC 理論上每秒執(zhí)行 5000 次加法,每秒 357 次乘法。在現(xiàn)在看來(lái)似乎還沒有一個(gè)幾十塊錢的計(jì)算器的計(jì)算速度快。但39GS這種計(jì)算器也未必在真正的大規(guī)模計(jì)算的時(shí)候比ENIAC更快。
但反過來(lái)看這個(gè)170噸重的大家伙真的會(huì)被現(xiàn)代計(jì)算器比下去嗎?
我們隨便拿個(gè) STM32 微控制器(別說是圖形計(jì)算器了),內(nèi)部 ALU 都能在納秒級(jí)完成加減操作,頻率幾十 MHz 起跳,真要比“加法次數(shù)/秒”,ENIAC 是“被秒”的。
但問題是:
這類比較屬于“表面物理速度”對(duì)比,跟計(jì)算本質(zhì)能力沒半毛錢關(guān)系。
計(jì)算器也好、計(jì)算機(jī)也好,本質(zhì)上就是一個(gè)工具。真正用好工具的是“使用工具的人”而非工具本身,同樣,設(shè)計(jì)一個(gè)工具讓他可以用起來(lái)的人也是至關(guān)重要的因素。
雖然ENIAC只有17000個(gè)電子管,但這玩意是包含一個(gè)完整的馮諾伊曼計(jì)算機(jī)結(jié)構(gòu)的。但它實(shí)現(xiàn)的東西——是人類第一次把“程序”和“數(shù)據(jù)”裝進(jìn)同一個(gè)設(shè)備里,讓機(jī)器不再是“你摁一下它動(dòng)一下”的手工工具,而是能自己判斷、跳轉(zhuǎn)、選擇、記憶、迭代、反饋的邏輯系統(tǒng)。
而我們手里的十幾塊錢計(jì)算器,有沒有程序存儲(chǔ)結(jié)構(gòu)?有沒有條件跳轉(zhuǎn)語(yǔ)義?能不能自己根據(jù)某個(gè)值選擇下一步動(dòng)作?——都沒有。
它是固定路徑電路,能算是因?yàn)槟惆聪氯ィ凰艹鰜?lái)結(jié)果,是因?yàn)橐欢?ROM 查表 + 固定小數(shù)點(diǎn)加減電路在撐著。
計(jì)算機(jī)怎么去計(jì)算,這件事已經(jīng)不用復(fù)述了,大多數(shù)人都知道,但很多人不知道計(jì)算器到底是怎么計(jì)算的。
一般的計(jì)算器中并沒有程序!不僅沒有程序,也沒有系統(tǒng),更沒有指令集,還沒有真正意義上的存儲(chǔ)器。
通常十幾塊錢里面往往只是一塊被稱為“ASIC”(Application Specific Integrated Circuit)的專用邏輯芯片,搭配一個(gè)TN型液晶屏和一塊紐扣電池。正因?yàn)槭沁@種結(jié)構(gòu),其實(shí)“計(jì)算器”是不“計(jì)算”的。
所以,打開一個(gè)計(jì)算器,我們會(huì)看到這樣的結(jié)構(gòu):
一個(gè)簡(jiǎn)單的集成電路被連接到鍵盤和顯示屏之間。看著比較復(fù)雜嗎? 其實(shí)這個(gè)電路只有三個(gè)部分,第一是鍵盤的經(jīng)緯格子,第二是顯示屏幕,第三是邏輯處理集成電路。
如果仔細(xì)講,你會(huì)發(fā)現(xiàn)這玩意和另外一種計(jì)算工具沒太大差別,啥呢?算盤!
算盤能計(jì)算嗎?能吧;但算盤識(shí)數(shù)嗎?算盤本身當(dāng)然不識(shí)數(shù)了。計(jì)算器也一樣——電子算盤而已!
計(jì)算器的電路核心并不在計(jì)算上,這是一個(gè)以查表法來(lái)顯示輸入內(nèi)容的設(shè)備,并不能完成自主計(jì)算功能。
如果想弄明白這件事就得了解一下BCD碼了。
Binary-CodedDecimal “二進(jìn)制編碼十進(jìn)制”,和普通二進(jìn)制編碼不同,BCD編碼并不使用四位二進(jìn)制來(lái)表示比9大的數(shù)字。例如9 在BCD編碼的內(nèi)容就是1001,而10如果用二進(jìn)制表示就是1010,但是如果在BCD編碼里面則是0001 0000,以此類推,例如15 在二進(jìn)制中表示為 1111,但在BCD編碼里面就成了0001 0101,
本質(zhì)上來(lái)說就是浪費(fèi)掉了二進(jìn)制的表示空間用每四位二進(jìn)制表示一個(gè)十進(jìn)制數(shù)字。為什么要兜這個(gè)圈子呢?
這種方法可以快速的用來(lái)顯示。在計(jì)算器上我們看到的每個(gè)數(shù)字都是以七段顯示來(lái)表示的。
這種顯示技術(shù)是依靠給預(yù)制排列好的七小段LED或者液晶電極的打開和關(guān)閉顯示數(shù)字的。例如,我們要顯示一個(gè)2,就需要開啟上面的a、b、d、e、g這五段電極,以此類推,如果要顯示3,我們就需要亮起a、b、c、d、g這五段電極、想顯示7就需要亮起a、b、c這三段電極。本來(lái)就沒多少電極,所以就可以建立一個(gè)表了
這就是BCD二進(jìn)制不同形態(tài)和abcdefg這些電極的關(guān)系表。
加之本來(lái)也沒有多少關(guān)系表,于是就可以做門電路了
通過這樣的設(shè)計(jì),就可以把BCD編碼中的四個(gè)二進(jìn)制WXYZ和燈腳的abcdefg相對(duì)應(yīng)起來(lái)。
本來(lái)計(jì)算器上也沒多少位數(shù)字,那么就可以把不同的位合并起來(lái)
這樣一個(gè)個(gè)的往下串也就成了計(jì)算器的顯示屏了。
那么計(jì)算器的顯示搞定了,運(yùn)算呢?
本來(lái)也沒什么運(yùn)算內(nèi)容,繼續(xù)查表唄!
AAAA+BBBB經(jīng)過查表就可以計(jì)算出了,現(xiàn)代計(jì)算器中的 + 操作,其實(shí)是以輸入兩個(gè)數(shù)為地址訪問預(yù)制的 ROM 區(qū),輸出結(jié)果直接作為顯示內(nèi)容。而計(jì)算機(jī)中的所有計(jì)算器其實(shí)都是依靠查表法完成的。
那為啥說計(jì)算器就是一個(gè)“電子算盤”呢?它和算盤有著天然的相似性,其實(shí)珠算也是依靠查表法來(lái)工作的,這個(gè)表叫做算盤口訣!
理解了吧?這玩意根本就不具備真正的運(yùn)算功能!是不是理解了這樣一個(gè)問題——拿計(jì)算器的運(yùn)算速度和計(jì)算機(jī)比,本身就沒啥意義了呢?
那么我們回到今天問題的核心——什么叫“計(jì)算”?
拿初中生都能理解的話講——“計(jì)算是一個(gè)把輸入變成輸出的過程,過程要遵守某種規(guī)則,這種規(guī)則是‘算法’或者‘邏輯關(guān)系’。”而計(jì)算這件事,并不在乎你用什么方法實(shí)現(xiàn)。
從早期的手搖動(dòng)計(jì)算機(jī),到下面給小孩玩的乘法猴子計(jì)算器:
這些東西都是輸入一個(gè)數(shù)字依靠某種規(guī)則得到一個(gè)結(jié)果的“工具”。
計(jì)算器所代表的則是有更多功能的“猴子乘法器”,但功能之外則完全無(wú)法使用了,例如你用上面的猴子計(jì)算器算個(gè)減法,估計(jì)很多人就難以實(shí)現(xiàn)了。
ENIAC這類的計(jì)算機(jī)所不同的是它的功能是無(wú)限的,這個(gè)東西叫做“通用計(jì)算機(jī)”只需要輸入程序就可以得到結(jié)果。它的“計(jì)算”的計(jì)算過程是完全不由其結(jié)構(gòu)和電路所限制的。
例如我們要算一個(gè)簡(jiǎn)單的一階常微分方程初值:
ENIAC是可以在不借助外部的工具的條件下解答出來(lái)的,用模擬器算了一下,大約是300毫秒出結(jié)果。
但是如果使用一個(gè)十幾塊錢的計(jì)算器,你就根本無(wú)法只依靠計(jì)算器完成。在計(jì)算器+紙筆的過程中,即便是W君算數(shù)還算快,也得至少5分鐘可以給出一個(gè)不一定準(zhǔn)確的結(jié)果……
當(dāng)然了,用39GS計(jì)算器,寫一段程序來(lái)計(jì)算也可以,但未必能真正跑過ENIAC。
原因就是39GS計(jì)算器其實(shí)也是一個(gè)在特定方向上做了一些優(yōu)化的專用設(shè)備,并不通用。所以說,再有人說“現(xiàn)在的計(jì)算器都比之前的大型機(jī)快了”,這種話聽聽就得了,真當(dāng)不了真,科技的進(jìn)步并不像很多人想得那么快,這是一個(gè)最基本的“認(rèn)知”問題。
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.