為什麼中國人用算盤,西方人用計算機

分享自由| 2015-09-02| 檢舉

歐亞大陸的東西兩端是人類文明史上最好的對比材料,僅就計算工具而言,中國人善用算盤,手熟者常常自詡賽過計算器;西方世界卻厚積薄發,在20世紀中葉發明了通用電子計算機。讓人難免好奇,是什麼樣的力量,主導了這大相逕庭的技術史?

文 | 劉大可

古裝劇中,手持算盤的帳房先生是常見角色之一,手熟者撥弄飛快,很快就能理清一天的帳目。今天,還有不少中小學講授算盤用法,然而只是作為傳統文化的修行,很少有人真的再用它計算。

人們更熟悉電子顯示的計算器,更複雜的計算,則由電子計算機完成。

中國人很早就發展出了完備的計數系統、算數方法,為什麼沒有進一步發展,到最後卻是西方人先發明了計算機?

算盤,西亞人的發明

和一般人想像的不同,算盤並非中國人的發明。最早的算盤出現在公元前2700年到2300年左右的蘇美爾文明,最初只是一個有橫隔的泥板,擺上泥丸或者石子,按位累加,放滿清空,並在下一列加1——這就是進位制的最初起源。

▍蘇美爾算盤模型

到了巴比倫時代,它演變為一種60進位的記數系統。這是用手指計數的產物——用左手大拇指依次觸擊其餘四指的三個關節,可以數到12,數完一遍,右手屈起一根指頭,屈起5根手指就是60。這種手指記數尤其適合清點貨物,這也是為什麼12進位是世界各地常見的計量單位之一。

▍巴比倫數字在古典時代西傳到了古希臘,進而被古羅馬繼承,演變成了一種青銅算盤

但巴比倫數字嚴重混淆,61和2看上去沒有區別,而且一個完整的乘法表需要59×60÷2= 1770項,致使古兩河流域的數學並沒有過高的發展。

好在算盤的發明西傳進入地中海地區,古希臘和古羅馬將它改良成便攜的青銅工具,拉丁語稱為「abacus」(複數abaci)。

羅馬式算盤採用一種雙5進位,橫檔上,上1珠每珠當5,下4珠每珠當1,例外的是最右兩列:θ列上1珠每珠當6,下5珠每珠當1,可以表示0到11的數字,專門用來處理羅馬單位制中的12進位。

比如1磅(libra)=12盎司(uncia),1尺(pes)=12寸(uncia)。最右邊一列是一檔4珠,或者分成3檔,分別嵌有1、1、2顆珠子,用來計算羅馬的青銅貨幣阿斯(As,源自重量盎司),這種貨幣帶有很多種分數幣值, 1/2、1/3、1/4、1/12等等,是一種混亂的混合進位。

▍兩副羅馬式算盤,現藏倫敦科學博物館,上者最右檔遺失2株

羅馬算盤小巧靈活,為建築師、工程師、商人提供了很大的方便,但是歐洲人長期使用的羅馬數字卻異常地蹩腳——他們為某些特殊值設立了符號,然後用左減右加的方式湊出需要的數值,結果讓算術在形式上缺乏規律,25+5=30寫作XXV+V=XXX,35+5=40寫作XXXV+V=XL,要用這種數字系統思考就不得不記住大量的結果。

不客氣地說,從古羅馬到中世紀,歐洲在數學發展上乏善可稱,13世紀以前只要會算除法就敢稱數學家,這讓歐亞大陸另一端的中國人顯得「更勝一籌」。

領先的中國人

此時的中國人使用什麼計算工具?

籌算。它與巴比倫數字一樣只有橫豎兩個符號,但機智地採用了橫豎混排,有效避免了羅馬人那樣的混淆狀況,是第一種有進位的10進位記數法。

這種計數系統經過南北朝、宋朝的改進,能夠標明小數和正負數,是當時最為先進的計數系統之一。

它的領先到了什麼程度?印度-阿拉伯數字傳入古代中國時,根本不受重視,因為它的功能在中國人看來,沒什麼新鮮的。

▍籌數的豎式和橫式表示法。1069的兩種表示法中虛線框表示空位,代表0

▍蘇州花碼。其1、2、3有兩種寫法,現在常見於港澳地區的茶餐廳和公共汽車

中國人很快發展出一套快速準確的籌算加減法,早在公元前305年的戰國竹簡中就給出了完整的乘法表,到南北朝的《孫子算經》則根據「九九表」給出籌算乘法和除法的規則。

▍公元前305年的《清華算表》,是一個擴充的九九表,本身也是一件查詢式計算工具

整數四則運算只是籌算的低級內容,僅《孫子算經》就還有分數四則籌算法和籌算開平方法,更早的《九章算術》給出了最大公約數籌算法、籌算聯立一次方程法、籌算開立方法。南朝的祖沖之用籌算「調日法」得到了圓周率的率355/113,精確到小數點後7位,保持世界記錄1千年之久。北宋賈憲發明了籌算增乘開立方法,能給百萬數量級的大數精確開立方,並被南宋秦九韶推廣,發展出了特定一元四次方程的解法。

▍秦九韶四次方程籌算法第一步

籌算的巔峰應用則出現在元代,朱世傑(1249-1314)在《四元玉鑒》中給出了特定四元高次方程組解法,可用算籌逐次消元化為一元高次方程。

▍朱世傑《四元玉鑒·四象會元》中的四元術,可見隨處標註的籌數

在上述兩種計算工具的基礎上,中式算盤誕生了。很難說中國的算盤是否是獨立發明的,它與西方算盤非常類似,很可能是絲綢之路東西交流的產物。

中國算盤最早見載於東漢末年的《數術記遺》,是像羅馬算盤一樣的游珠算盤,到唐代改良為現在的串珠算盤;而現存最早的算盤圖像見於北宋張擇端的《清明上河圖》,卷左趙太丞家藥鋪櫃檯上有一個十五檔一四算盤,和現代會計算盤幾乎一樣。

▍《清明上河圖》局部,白色虛線框內為算盤,與下面的菱形珠十五檔一四算盤同款

操作上,中式算盤比算籌更加實用。它節省空間,操作迅速,記熟一套「三下五去二」就足以勝任絕大多數帳面工作;但又犧牲了布局的自由,只從籌算上繼承了四則運算、開平方、開立方等簡單操作,兩幅算盤並聯操作才能計算分數。

因此,籌算被數學家青睞,珠算在民間迅速推廣,這也使得算盤的形制不像算籌那樣固定。

中式算盤發明之初採用菱形珠子,上1珠每珠當5,下4珠每珠當1,每檔能表示0到9的數字,完全複製了算籌的10進位。這種一四算盤在宋代時傳入日本,在那裡一直沿用至今,並在清代末年傳回中國,成為現代會計算盤的主要形制。

但中國本土的算盤到明代時改革成了圓形珠子,上2珠每珠當5,下5珠每珠當1,每檔能表示0到15的數字,成為一種16進位和10進位通用的計算工具。這是因為中國的長度和容積單位採用10進位,主要的重量單位卻是1斤=16兩,所以布店打算盤只需1顆上珠和4顆下珠,糧店打算盤就要7顆珠子全用到了。為了便攜,明代以後的算盤還往往減少成13檔,這些古老而便捷的計算工具有著驚人的計算速度,直到20世紀後半葉才被手持電子計算器勉強擊敗,但仍然以珠算和珠心算的形式出現在東亞各國的基礎教育里。

▍清代十三檔二五算盤

西方人的逆襲

中國人在計算上的優勢一直都很明顯,算盤和籌算的不斷改進,讓這種優勢越拉越大。

然而,阿拉伯數字的傳入,卻讓天平出現了變化。

13世紀初,中世紀最偉大的數學家,義大利的斐波那契(Leonardo Fibonacci,約1170-約1250)出現了。他在北非經商時學會了「阿拉伯數字」,寫成一本《計算之書》(liber abaci,直譯「算盤書」),讓歐洲人有了進位的概念。

阿拉伯數字不但取代了羅馬數字,還取代了羅馬算盤,因為阿拉伯數字從0到9都設立了單獨的符號,藉此開發出了一套紙上列豎式的算法,千變萬化一目了然,又便於核對,到16世紀就占據了壓倒性的優勢。

▍《瑪格麗塔哲學書》(Margarita philosophica)中的插圖,繪於1503年,左邊使用阿拉伯數字的Algorist正用勝利的表情看著右邊使用算盤的Abacist

阿拉伯數字將羅馬數字和羅馬算盤逐出舞台之後,讓算術關係變得更加清晰,在近代以來的巨大變革中,歐洲的計算工具走上了完全不同的發展道路。

一個重要的信號,是查詢式計算工具的出現。最典型的是蘇格蘭數學家約翰·納皮爾(John Napier,1550-1617)發明的「納皮爾的骨頭」(Napier''s bones)。這套工具主要用來計算乘除法,計算時先用算碼湊成一個因數,再根據行號讀出與另一個因數每一位的乘積,最後在紙上相加,本質上就是一副活字九九表,如果加入其它擴充的算碼還可以用來開方。

之後的三個多世紀裡,它不斷改良,是近代早期歐洲最流行的計算工具,並曾東傳中國,被清代數學家當作籌算的分支。

▍納皮爾的骨頭

但約翰·納皮爾的數學貢獻不只是一副「骨頭」,他還是對數概念的提出人,這直接引出了另一種沿用至今的計算工具——計算尺。

17世紀的大不列顛開始對外殖民擴張,航海、測繪、天文定位都出現了難以完成的計算需求,而對數可以化冪運算為乘除法、化乘除法為加減法,法國數學家和天文學家拉普拉斯(Pierre Simon Laplace,1749-1827)曾讚嘆:「對數,可以縮短計算時間,在實效上等於把天文學家的壽命延長了許多倍。」

▍如同乘法表,對數表也是一種查詢式計算工具,但在電子計算機發明以前只有少數研究機構才有實力算出這二郎神都會看花眼的東西

1620年到1630年間,牛津大學和劍橋大學根據納皮爾的對數原理,發明了更方便的滑尺,分直形和圓形兩種,可通過對齊尺子上的刻度查詢計算結果——這就是中文「對數」一詞的由來。

隨後的兩個世紀裡,工程師和數學家不斷為計算尺引入新的刻度,並添加了滑動的游標,發展成現代的多相算尺,可以進行加減法之外所有的算術運算,以及三角函數等超越計算,不同工程領域還常常研發出自己的專業型號。

20世紀70年代出現電子科學計算器以前,計算尺都是工程師的身份象徵。

▍幾種計算尺

查詢式計算工具蓬勃發展的同時,精密儀器製造業也從15世紀起崛起發展,最初只是一些商業城市用自鳴鐘樓統一作息,以適應日趨工廠化的製造業,到17世紀發展成更加精密的座鐘和懷表。

鐘錶指針的齒輪轉動天然地具有進位功能。1642年,法國數學家、物理學家和化學家帕斯卡(Blaise Pascal,1623-1662)藉此設計了一台「帕斯卡計算器」(Pascal''s calculator)。長方形的黃銅盒子上開有一列讀數窗,下面對應著一行帶輻條和指針的齒輪。操作時先像撥盤電話一樣逐位輸入一個加數,這將顯示在上方的讀數窗里;再用同樣的方式輸入另一個加數,讀數窗里就會顯示出和了。

▍現存帕斯卡計算器之一,製作於1942年,現存法國工藝美術館

帕斯卡計算器雖然在功能上遠遠不及算籌和算盤,卻是一次徹底的革命——算籌和算盤本身不包含任何算法,只能存儲計算的中間結果,操作依賴熟記指令的人,本質上只是寄存器。帕斯卡計算器卻用內部的齒輪機構預存了算法,操作者完全不需要知道計算方法就能操作。

這才是真正的計算器,而不止是計算用的工具。

儘管占有許多歷史第一,但帕斯卡的計算器並沒有充分推廣,他的設計初衷只是幫助父親計算稅收,造價非常高昂,最後淪為有錢人的機械玩具,前後只賣出約20件。

與帕斯卡類似,德國大數學家、哲學家萊布尼茲(Gottfried Wilhelm Leibniz,1646-1716)也對機械化的計算工具頗有興趣,他在1672年到1694年之間發明了一種「步進計算器」(Stepped Reckoner),採用了他獨創的「萊布尼茲輪」(Leibniz wheel),可以控制齒輪只轉動需要的角度。這產生了相當複雜的運算能力,除了普通的加減法意外,還能將兩個8位數字相乘為一個16位數字,或者用一個16位的數字除以一個8位數字。

▍萊布尼茲兩件步進計算器中的一件

作為人類歷史上第一件能實現四則運算的計算器,造價高昂的步進計算器也沒有獲得普遍的推廣,當時只製作了兩件,現存一件。但這已經奠定了歐洲機械計算器的研發基礎。

18世紀,功能日漸強大的機械計算器在歐洲雨後春筍般的湧現出來,比如下面這台從萊布尼茲的設計中衍生出來的計算器就可以切換多種進位制。

▍德國數學家Johann Helfrich Müller設計的盤形計算器

從18世紀開始,另一種強勁的力量加入到計算器的發明之中——商業。

1820年,第一個結實可靠,能勝任日常使用的法國「四則計算器」(Arithmometer)發明了,它在1851年投產。在它的帶動下,一大批台式機算器進入了會計師的辦公室,許多品牌一直沿用到20世紀。

▍一些計算器

▍19世紀主要台式計算器的研發和生產型號,黃色部分表示專利申請時間,藍色部分表示投入生產時間

不過,僅就實用價值來看,這些新奇的機械計算器還不能壓倒算盤,但就在四則計算器獲得專利的同時,英國數學家和工程師查爾斯·巴貝奇(Charles Babbage,1791-1871)的腦海中已經有了現代計算機的雛形。

他首先在1822年設計了差分機(Difference engine),旨在將計算到印刷的過程全部自動化,全面排除人為誤差。它由英國政府出資建造,大約有2萬5千個零件,重4噸,用蒸汽機驅動,最高可以讀寫16位數,是人類踏進計算機科學的重大起步,但因為大量精密零件製造困難,從1822到1832年的十年間只完成了1/7,最終1萬2千多個還沒用到的精密零件都被熔解報廢。

▍差分機1號完成的1/7

失去政府支持後,巴貝奇繼續設計了更加精密的分析機(Analytical Engine),能用多項式展開的方法計算對數和三角函數,大約有30米長、10米寬,內存已有20.7kB,用打孔紙帶輸入,完成類似彙編語言的程序指令,是一種圖靈完備的通用計算機。

▍分析機部分組件的實驗模型,巴貝奇自製,現藏倫敦科學博物館

可惜,同樣出於資金和技術的原因,這部超越時代的機器並沒能製作出來,但給後世開闢了全新的研發思路。19世紀晚期,打孔卡和真空管等關鍵技術相繼問世,大大降低了完成同樣功能所需的資金和體積,終於在1941年,踏過幾個世紀的漫長征途,第一台數字電子計算機問世了。

▍阿塔納索夫-貝瑞計算機(Atanasoff–Berry Computer),世界上第一台電子數字計算機,製造於美國愛荷華州立大學

原理上,一切電子設備的功能都可以由機械設備同樣完成,算盤與計算機的差距就只是一套代替人手的「撥珠器」。

然而,中國很早就發展出了完備的記數系統和算術方法,足以抵禦外來數學體系的滲透,但又沒有產生更進一步的應用需求,讓數學工具向著更複雜的方向發展。

今日,電子計算機顛覆了每個現代人的生活,算盤卻只能被當做傳統文化的一部分,在中小學傳承。

**有人用fb聊天,有人卻在fb中學習,成長。今天給大家推薦一些優質的fb專頁,願你每天都能成長。

關注Facebook專頁:分享自由

↤點擊這

文章來源: https://www.twgreatdaily.com/cat42/node564882

轉載請註明來源:今天頭條