計(jì)算機(jī)的誕生1946年,在美國(guó)的賓夕法尼亞大學(xué)誕生了第一臺(tái)現(xiàn)代電子計(jì)算機(jī)ENIAC。雖然在今天看來ENIAC計(jì)算能力連手機(jī),甚至是十幾塊錢的計(jì)算器都比不上,但它在當(dāng)時(shí)卻是相當(dāng)強(qiáng)大。ENIAC的體積非常龐大,得好幾個(gè)大房間才能放下它,耗電也相當(dāng)恐怖,一開機(jī)全城家家戶戶電燈都要變暗。 之所以稱ENIAC是第一臺(tái)現(xiàn)代計(jì)算機(jī),是因?yàn)楝F(xiàn)代計(jì)算機(jī)理論的奠基人是圖靈和馮諾依曼。這兩個(gè)超級(jí)天才應(yīng)該大家都聽過,圖靈提出了圖靈機(jī)理論模型,而馮諾依曼設(shè)計(jì)確定了現(xiàn)代計(jì)算機(jī)的基礎(chǔ)結(jié)構(gòu),他以數(shù)學(xué)語(yǔ)言闡述了計(jì)算機(jī)模型,將程序和數(shù)據(jù)都存在存儲(chǔ)器中。 思想轉(zhuǎn)為代碼實(shí)際上,計(jì)算機(jī)的發(fā)展并非一蹴而就。現(xiàn)代電子計(jì)算機(jī)屬于狹義上的計(jì)算機(jī),而廣義上的計(jì)算機(jī)其實(shí)包括所有人類制造出來的計(jì)算設(shè)備,比如古代的算盤也屬于計(jì)算機(jī),只不過它是靠人力驅(qū)動(dòng)的,再比如機(jī)械式計(jì)算機(jī),使用機(jī)械齒輪來進(jìn)行運(yùn)算。 在廣義上,對(duì)于計(jì)算機(jī)我們更應(yīng)該將其理解為一種思想。計(jì)算機(jī)其實(shí)是為了幫助人類將思想轉(zhuǎn)化為代碼仿真出來,這就要求我們需要先對(duì)思想進(jìn)行解碼工作。而在古代就已經(jīng)有先賢在邏輯學(xué)和數(shù)學(xué)方面進(jìn)行研究,其中最偉大的思想家就是柏拉圖和亞里士多德,他們倆也互為師生關(guān)系。 亞里士多德首次將哲學(xué)與科學(xué)分離,并在邏輯方面進(jìn)行了研究,他認(rèn)為邏輯是一切科學(xué)的基礎(chǔ),是形式邏輯學(xué)的創(chuàng)始人奠基人。他將人的思維和存在聯(lián)系起來,然后根據(jù)實(shí)際闡明邏輯。亞里士多德在推理邏輯中提出了三段論: 所有動(dòng)物都會(huì)死所有人都是動(dòng)物所以,所有人都會(huì)死 異類聯(lián)想自亞里士多德以來,邏輯學(xué)和數(shù)學(xué)都是分開研究各自發(fā)展的。直到后來德國(guó)的萊布尼茨哲學(xué)家才嘗試將它們結(jié)合起來,通過將兩種現(xiàn)有的思想結(jié)合起來,以形成第三種創(chuàng)新思想,即異類聯(lián)想。后來發(fā)展出數(shù)理邏輯這門學(xué)科,以數(shù)理邏輯思想為基礎(chǔ)的計(jì)算科學(xué)也在不斷地發(fā)展著。對(duì)于這些人,他們的目標(biāo)是將抽象的邏輯用精確的數(shù)學(xué)符號(hào)來表示, 對(duì)于計(jì)算機(jī),多數(shù)人會(huì)認(rèn)為計(jì)算與邏輯是密不可分的,甚至還有人認(rèn)為計(jì)算的本質(zhì)其實(shí)就是邏輯。而邏輯與數(shù)學(xué)的關(guān)系是,邏輯并不等于數(shù)學(xué),只是曾經(jīng)有人想以邏輯為基礎(chǔ)來構(gòu)建數(shù)學(xué)。邏輯、計(jì)算和數(shù)學(xué)三者應(yīng)該如何融合? 調(diào)和代數(shù)與幾何在笛卡爾之前,代數(shù)和幾何各自為政,它們是兩個(gè)獨(dú)立不同的學(xué)科。然而幾何過度依賴圖形與形式,代數(shù)又過分受公式限制,這都制約了它們的發(fā)展。這時(shí)法國(guó)數(shù)學(xué)家笛卡爾則通過異類聯(lián)想將這兩者聯(lián)系了起來,創(chuàng)立了解析幾何,從而他也被稱為解析幾何之父。 笛卡爾發(fā)明了現(xiàn)在大家很熟悉的直角坐標(biāo)系,x軸和y軸,通過坐標(biāo)系成功調(diào)和了幾何與代數(shù)。從此一個(gè)圓可以用方程來描述,也可以用坐標(biāo)系畫圖來表示。此外,解析幾何也為微積分的創(chuàng)立奠定了基礎(chǔ)。 邏輯與代數(shù)的融合現(xiàn)在估計(jì)多數(shù)人都沒聽過布爾,程序員最多也是知道布爾類型,但其實(shí)可以說布爾邏輯是計(jì)算機(jī)的核心理論。萊布尼茨一直的夢(mèng)想就是將邏輯學(xué)和數(shù)學(xué)進(jìn)行融合,而英國(guó)的數(shù)學(xué)家喬治布爾則通過異類聯(lián)想將亞里士多德的三段論與代數(shù)結(jié)合起來,并發(fā)明了二進(jìn)制,將這個(gè)夢(mèng)想向前推動(dòng)。 算術(shù)可來實(shí)現(xiàn)加法乘法,而邏輯主要是或、與等,能否將它們結(jié)合起來呢?邏輯或類似于加法,即兩個(gè)相交集合中,有些元素只屬于其中一個(gè)集合。邏輯與則是兩個(gè)相交集合共同擁有的那些元素,這部分類似于乘法。而且是只有在0和1的情況下才能成立,這就將算術(shù)與邏輯通過二進(jìn)制運(yùn)算連接了起來。 香農(nóng)的二進(jìn)制正是克勞德香農(nóng)將布爾的邏輯運(yùn)算帶入計(jì)算機(jī),香農(nóng)是一名貝爾實(shí)驗(yàn)室的工程師。比起有名的科學(xué)家,香農(nóng)的名氣不算大,估計(jì)只有計(jì)算機(jī)專業(yè)的人有了解過他,而且大家知道他估計(jì)也是因?yàn)樾畔⒄?。其?shí)香農(nóng)的偉大成就還包括他將邏輯融入到計(jì)算機(jī)內(nèi),從而成功將邏輯層和物理層進(jìn)行分離。得益于香農(nóng)將邏輯映射到現(xiàn)實(shí)物理世界,至此計(jì)算機(jī)得到了空前的發(fā)展。 其實(shí)是他將二進(jìn)制運(yùn)算與電子器件相結(jié)合,實(shí)現(xiàn)了邏輯功能,奠定了如今計(jì)算機(jī)的運(yùn)算機(jī)制。他設(shè)計(jì)出了相加電路來構(gòu)造復(fù)雜的算術(shù)運(yùn)算,這些電路也成為現(xiàn)代計(jì)算機(jī)的組件??v使后面越做越小越來越先進(jìn)的晶體管,也是基于香農(nóng)的電路原理。 圖靈的圖靈機(jī)圖靈機(jī)即圖靈計(jì)算機(jī),是由數(shù)學(xué)家艾倫·麥席森·圖靈(1912~1954)提出的一種抽象計(jì)算模型。圖靈嘗試以數(shù)理邏輯語(yǔ)言來設(shè)計(jì)計(jì)算機(jī),將人們使用紙筆進(jìn)行數(shù)學(xué)運(yùn)算的過程進(jìn)行抽象,由一個(gè)虛擬的機(jī)器替代人們進(jìn)行數(shù)學(xué)運(yùn)算。 圖靈機(jī)有一條無限長(zhǎng)的紙帶,紙帶分成了一個(gè)一個(gè)的小方格,每個(gè)方格有不同的顏色。一個(gè)機(jī)器頭在紙帶上進(jìn)行移動(dòng),機(jī)器頭有一組內(nèi)部狀態(tài),還有一些固定的程序。在每個(gè)時(shí)刻,機(jī)器頭都要從當(dāng)前紙帶上讀入一個(gè)方格信息,然后結(jié)合自己的內(nèi)部狀態(tài)查找程序表,根據(jù)程序輸出信息到紙帶方格上,并轉(zhuǎn)換自己的內(nèi)部狀態(tài),然后進(jìn)行移動(dòng)。 每一個(gè)會(huì)決策、會(huì)思考的人都可以被抽象地看成一臺(tái)圖靈機(jī),該模型主要有四要素:輸入集合、輸出集合、內(nèi)部狀態(tài)和固定的程序。如果把人進(jìn)行抽象,那么輸入集合就是所處環(huán)境中所看到、聽到、聞到、感覺到的一切;輸出集合就是人的每一言每一行,還有表情動(dòng)作;內(nèi)部狀態(tài)集合則可以把神經(jīng)細(xì)胞的狀態(tài)組合看成一個(gè)內(nèi)部狀態(tài),所有可能的狀態(tài)集合將是天文數(shù)字。 |
|