官术网_书友最值得收藏!

第1章 漫長的手動時期

1.1 原始社會的計數方式

1.1.1 手指:長在身上的“計算機”

文明萌芽之前,人類的祖先還沒有“數”的概念。在廣袤的原始森林里,他們認識這棵樹,也認識那棵樹,唯獨沒有“這是從哪到哪第幾棵樹”的概念,更沒有某一范圍內總共有多少棵樹的概念。

后來祖先們漸漸有了計數的意識,但起初局限于很小的數。他們用身上的特定部位去表示數字,如用鼻子表示1,用眼睛或耳朵表示2。直到20世紀40年代,在一些文化發展比較遲緩的地區,部分人最多只能數到3或10,再往后就數不清了,只將其統稱為“多”。在國外,澳大利亞、巴布亞新幾內亞和巴西的一些部落也沒有定義2或3以上的數字。

人天生是不擅長計數的,在潛意識里很容易把超過3的數目歸類為“多”。這就好比在未經有意識統計的情況下,當有一兩個人說你長得好看,你會記得有那么一兩個人說你好看;而當有第三、第四個人這么說時,你的印象里一定是“好多人都說我長得好看”!

1.肢體計數

然而,人類終究是要與較大的數打交道的。祖先們漸漸需要面對“打到了多少獵物”“部落有多少人口”這類簡單的統計問題,他們為了計算更“大”的數開始動用身上包括手指在內的各個部位。

每個原始部落都約定了一套內部通用的計數規則。據統計,單在巴布亞新幾內亞就發現了至少900種不同的肢體計數方法。其中一種是用上半身的27個部位表示數字1~27,如圖1.1所示。如今看來,這種計數方式比直接使用數字麻煩得多。

圖1.1 巴布亞新幾內亞某部落的身體部位計數法[1]


[1] 圖片來自《“啊哦嗚”部落和“牟尼”部落》。

使用最多的肢體部位是手指和腳趾,一指(趾)就表示1,雙手(腳)就表示10,一人就表示20。因此,有不少地方曾使用二十進制。在以前的英國貨幣中,1英鎊等于20先令;在法語中,數字表示也受到二十進制的影響,如80=4×20(quatre-vingt)[2],90=4×20+10(quatre-vingt-dix)。


2.手指計數與十進制

比起腳趾,手指更便于計數。如今應用最廣的十進制便源自我們的10根手指。

20世紀美國著名的科幻、科普作家艾薩克?阿西莫夫曾說過:手指是人類最早的“計算機”,英文單詞“Digit”既表示“手指”,又表示“整數數字”。

我們設想一個場景。在很久很久以前,一個人類的原始部落與一群野獸爆發了激烈斗爭,人類憑借聰明的頭腦最終大獲全勝。部落首領指派糧食管理員對斬獲的獵物進行清點,管理員便掰起了手指,1根手指對應1頭獵物。當他數到第10頭獵物時就犯難了,因為手指用完了,獵物卻還有很多,這可怎么辦呢?

他到處詢問解決辦法,但部落中從沒有人數過這么多獵物。正當大家一籌莫展時,一個機靈的孩子說:“每數完兩只手,就找1根樹枝放在一邊,這樣就可以騰出手指重新數啦!最后除手指之外,再數一下一共有多少根樹枝,不就知道總數了嗎?”

大家都覺得這個方法很好,紛紛對孩子豎起了大拇指。糧食管理員也順利地完成了任務。

這就是十進制的由來,也是進制的由來。大多數人天生擁有10根手指,在數數時,每滿10就需要額外記錄一下。這位糧食管理員在最后清點樹枝時,仍有可能遇到手指不夠用的情況,此時他可以10根一組地將樹枝捆起來,這就實現了從十到百的進位。后來人們也想出了各種各樣的手指計數方式,如用一只手的手指表示個位,用另一只手的手指表示十位,可以直接表示出1~99,如圖1.2 所示。

圖1.2 用手指表示1~99的一種方法[3]


[3] 圖片來自《計算機技術發展史(一)》。

再進階一點,手指的彎曲所形成的各種手勢都可以用來表示更大的數。比較典型的例子是1494年由意大利數學家盧卡?帕喬利(Luca Pacioli)整理的一套手指計數法。圖1.3左側兩列為左手手勢;右側兩列為右手手勢。

圖1.3 Luca Pacioli手指計數法[4]


[4] 圖片來自“Computer History Museum”。

先人的智慧令人欽佩,在不借助外部工具的情況下,光靠手指就能實現幾百乃至幾千的計數(更復雜的手指計數甚至可達百萬)。

3.其他進制

除十進制之外,還有許多歷史上曾出現過或如今依然在用的其他進制,它們大多也源自手指計數。

太平洋中有個叫瓦努阿圖的島國,那里的人們喜歡用單手數數,就用著五進制。如果你問:“一星期有幾天?”他們會回答你:“一手兩天。”我們平時在統計投票時采用畫“正”字的方式可以提高效率,中國算盤的設計也是“滿5進1”,這正是因為人類在潛意識中習慣五進制這種“單手操作”。

美國加州和墨西哥的一些部落則喜歡用指縫計數。攤開你的雙手數一數,有幾條指縫?答案是8條。八進制就是這么來的。不過,如今八進制大多出現在一些專業領域,很少在生活中出現。

還有些部落留意到手指是分節的,伸出一只手,從食指到小拇指,每根手指都有3個指節,一共12節,十二進制就這么出現了。那大拇指呢?大拇指負責的是指向這些關節,這樣單手就可以完成12以內的計數了。十二進制在生活中是很常見的,如時針走1圈代表12小時,1年有12個月,我們平時所說的“一打”也是12的意思。

古巴比倫人一手用十二進制,一手用五進制(表示12的1~5倍),結合起來就產生了楔形文字中的六十進制,如圖1.4所示。生活中,六十進制主要用于計時,如1小時有60分,1分有60秒。在中國的傳統文化中,十天干與十二地支按順序兩兩相配,每60年為一個甲子。

圖1.4 古巴比倫手指計數法[5]


[5] 圖片來自《用身體來計數》。

讀到這里,讀者可能會有些失望,因為最關鍵的二進制還沒有出場。二進制源自哲學,不是靠手指計數產生的,后面會介紹相關內容。

4.手指計算

僅用手指表示數字仍是不夠的,欲將手指稱為計算工具,起碼還要用它實現計算功能。手指確實可以進行一些簡單的計算,配合心算口訣,不但能做加減運算,還能做乘除,我國古代就出現過成熟的“手算”方法。明代數學家程大位在其《算法統宗》一書中詳細記載了由秦晉商人發明的“一掌金”算法[6],它是靠右手手指點左手的各個指關節來完成計算的,如圖1.5所示。


[6] 有關“一掌金”的記述最早見于明代數學家徐心魯于1573年寫的《盤珠算法》一書。

圖1.5 《算法統宗》記載的“一掌金”[7]


[7] 圖片來自《算法統宗》。

有了“一掌金”,商人出門談生意,兩手往衣袖里一藏(那時的算法通常是商業機密,不能輕易外泄),“掐指”一算,出賬入賬就都清楚了。有歌謠曰:“袖里吞金妙如仙,靈指一動數目全。無價之寶學到手,不遇知音不與傳。”

“手算”雖然方便,但能算的數值范圍畢竟有限,還需牢記復雜的心算口訣?,F在一些少兒教育機構熱衷于開發面向小朋友的手指速算法,這確實比純心算更快、更可靠,但這用來開發智力還可以,實際應用起來就捉襟見肘了。正是手指的這種局限性,促使著人類擺脫身體部位的束縛,一步步朝著更先進的計算工具邁進。

1.1.2 石子:解放雙手的第一步

用手指計數和計算的一個顯著缺點就是無法存儲。如果一個獵人想統計自己一個月內打了多少頭野獸,則需要每天累加,總不能天天掐著手指睡覺吧!

人類最早借助的外物是大自然中隨處可見的石子、貝殼、小木棍、玉米粒、豆粒,甚至動物的尾巴和角等。例如,用石子表示圈養了多少頭獵物。若第一天宰殺了兩頭,就從中取出兩顆石子;若第二天新狩獵到3頭,就往里添加3顆石子,這樣人們就不需要時刻記著還剩多少頭獵物了。

也許是耐存放的原因,在這些天然物品中,石子用得最多,我們不妨將這種計數方式統稱為石子計數。英文中表示“微積分”的單詞calculus在拉丁文中的原意正是“用來計算的小石子”,可見石子與計算本身有著很深的淵源。

1.石子計數

人們最早使用石子等物品表示數量時,其實對最終的計數結果毫無概念。斯里蘭卡的維達人會使用樹枝表示椰子的數量,但如果你有機會采訪一名正在收椰子的維達人,你們的對話大概會是下面這樣的。

你:“一根樹枝代表一個椰子是嗎?”

他:“是的?!?/span>

你:“等椰子收完了,再數一數一共有多少,是嗎?”

他:“嗯?數啥?”

你:“不數怎么知道一共有多少個椰子呢?”

他(指著那堆樹枝):“就這么多。”

真正的石子計數是不能這樣無視計數結果的。20世紀50年代前,我國云南貢山的傈僳族在選舉村長時,村民用在候選人面前的碗或竹筒中投放豆子或玉米粒的方式進行投票,最后統計票數(與我們現在的投票方式在本質上是一樣的);處理糾紛時,他們也采用同樣的方式,每陳述一條理由就投放一粒玉米。歷史上,戰爭中,人們用鵝卵石記錄雙方傷亡人數,并在戰后根據清算的鵝卵石數量進行賠償……這些與上一個例子的本質區別在于事后進行了清點,這樣方可稱為計數。

這些保持著古老生活方式的民族成為我們了解歷史的重要依據。他們的計數手段看似落后,但有時出于信仰或樂趣會做出有意思的東西。印第安人就把石子堆出了“新高度”,如他們把21擺成一個“卍”字,如圖1.6所示。4支箭、4根棍子、12顆石子、1個中心,總計21。

圖1.6 美國印第安人石子計數中的“卍”字

我國的河圖與洛書也記載了石子計數,河圖記載的是用黑白兩色石子分別擺出數字1~10,洛書則擺出1~9,如圖1.7所示。

除以上單純以石子的數量進行計數的做法之外,還有許多以石子的種類或尺寸來區分不同位數的高階計數法。如云南納西族用小石子代表個位,用稍大的石子代表十位,用更大的石子代表百位。

圖1.7 河圖(左)與洛書(右)

2.石子計算

與手指一樣,石子不僅可以計數,還可以計算。

在北京的民族文化宮里,藏有兩臺藏族的石子計算器,它為木質的長方形盤,長約70cm,寬約36cm,厚約4cm。雖然叫作計算器,但它們其實只是具有收納功能的擺盤。其中一臺用石子表示個位,用木棍表示十位,用果核表示百位,用蠶豆表示千位,用瓦片表示萬位。每擺滿10個石子就換用1根木棍,每擺滿10根木棍就換用1顆果核,依次類推。借助這些工具,人們可以進行簡單的四則運算,以1024×4為例。

(1)1024表示為1顆蠶豆、兩根木棍、4顆石子。

(2)乘以4相當于將每樣物品均添加至原來數量的4倍,即4顆蠶豆、8根木棍、16顆石子。

(3)石子滿10需進位,用1根木棍代替10顆石子。

(4)總共有4顆蠶豆、9根木棍、6顆石子,讀作4096。

用現在的眼光來看,這種所謂的計算器其實只是充當了草稿紙的角色。

據此,人們可以對石子一類的物品賦予特殊的數學含義,石子擺放的相對位置也被利用了。久而久之,越來越多的巧妙算法應運而生。時間把人類的智慧匯集在一起,最終形成了后來經典的算籌和算盤。

1.1.3 結繩:最原始的備忘錄

手指雖可“隨身攜帶”,但不便存數——沒人能一直保持一個手勢;石子既可攜帶又可存數,但數量一多難免就重了,而且攜帶時會打亂石子間的拓撲關系,因此并不便攜。

為彌補兩者的不足,聰明的先人想到了在繩子上打結,如圖1.8所示。

圖1.8 結繩[8]


[8] 圖片來自網絡。

據文獻記載及考古發現,人類最早從新石器時代開始使用結繩的方法。歷經漫長的傳承,結繩一直延續到20世紀,并遍布世界范圍,中國、日本、埃及、墨西哥、秘魯、波利尼西亞等地均曾盛行。

這種用結繩記錄信息的古老做法在英文中也能找到蛛絲馬跡,如繩子(cord)正是記錄(record)的詞根。

1.結繩計數

結繩可以計數。最簡單的是用一個結表示1;用繩結的大小或位置來表示不同的數位;手巧的人們還能打出不同花式的結來表示不同的含義,或者選用多種材質,給繩子染色,拴上一些物件等來表示不同的含義。

傳說波斯王派軍遠征時,命令他的衛隊留下來保衛耶茲德河上的橋60天,但60在當時是個很大的數,如何掐準日子呢?聰明的波斯王在皮條上打了60個結,囑咐士兵每天解開一個,解完所有的結后,士兵就可以回家了。

我國的佤族用高掛在墻上的結繩來記錄債務,大結表示1,小結表示1/2。繩子上部的結表示借債金額,中部的結表示年利息,底部的結表示出借時間。

神秘的印加帝國則把結繩的計數能力發揮到了極致,將所有子民的年齡、食物供應、軍隊數目、金銀財產等信息用結繩悉數記載,后來的西班牙殖民者感嘆道:“他們甚至連一雙鞋都不會漏記。”他們的結繩有著一個神圣的名字——奇普(quipu或khipu)。

圖1.9和圖1.10所示的奇普由一根橫著的主繩和垂掛于其上的密密麻麻的繩子組成,我們不妨稱后者為垂繩。主繩往往較粗,起懸掛垂繩的作用;垂繩則負責記錄信息。根據需要,垂繩上還可另外系附屬繩,附屬繩上還可再系繩,類似于根上生根的形態。一些復雜的奇普甚至掛著10~12層附屬繩,最大的奇普共由約2000根繩組成。

圖1.9 奇普的組成[9]


[9] 圖片來自KDP網站。

圖1.10 奇普的結構[10]


[10] 圖片來自Signs of the Inka Khipu。

現存奇普的主繩長度為10~514cm,展示時將其繃直或擺成弧形,以便讀數;存儲或運輸時則將其螺旋而盤,宛如一個拖把頭。圖1.11所示為藏于秘魯拉爾科博物館的以“弧形閱讀模式”展示的奇普。

圖1.11 以“弧形閱讀模式”展示的奇普[11]


[11] 圖片來自維基百科。

現存最大的奇普是一卷年歷,如圖1.12所示。它共有762根垂繩,其中730根垂繩(對應730天)通過一定的距離間隔分成了24股(對應24個月)。

圖1.12 以弧形展示的年歷奇普[12]


[12] 圖片來自KDP網站。

奇普上的繩子通常由棉、羊毛、駝絨等材料制成,現存的奇普多數為棉質。棉花有白、棕、綠等多種顏色,但遠遠滿足不了人們制作奇普的需要。印加人會給奇普上的繩子染上更多的顏色,有時還把兩根不同顏色的繩子接成或搓成一根。這些顏色有著豐富的含義,如黑色代表死亡或災禍,紅色代表士兵,黃色代表黃金,白色代表白銀或和平,綠色代表谷物等。圖1.13所示為藏于秘魯馬丘比丘博物館的彩色奇普。

圖1.13 彩色奇普[13]


[13] 圖片來自維基百科。

奇普上的繩結主要包括長結、單結和“8”字結3種,如圖1.14所示。

用不同位置的單結表示10、100、1000、10000等(10n),離主繩最近的單結位數最高,最靠近垂繩尾端的單結表示10。例如,若尾端有3個挨在一起的單結,即表示30,因此用單結可以表示任意整十數。個位數則用長結表示,長結其實就是在單結的基礎上多繞幾圈,兩圈就表示2,因此用長結可以表示2~9。1比較特殊,單獨使用“8”字結來表示。這樣,奇普就可以記錄任意正整數了。

圖1.15所示為奇普使用不同繩結進行計數的示例,奇普的主繩上至少會有一根記錄統計值的垂繩。

圖1.14 奇普的3種繩結[14]


[14] 圖片來自《計算機技術發展史(一)》。

圖1.15 不同繩結的使用示例[15]


[15] 圖片來自網絡。

2.結繩記事

結繩不但可以計數,還可以記事。

東漢末年,儒家學者、經學大師鄭玄在《周易鄭康成注》一書中有言:“事大,大結其繩;事小,小結其繩?!薄顿F州苗民概況》一書中提到:“苗族識字甚少,猶保持上古結繩記事之遺風,遇事暗中以草記之,簡單事件日久尚能憶及?!?/p>

在文字還未誕生的時代,結繩扛起了記載信息的歷史重任。

1)結繩通信

富含信息的結繩常被用作信件。我國普米族將結繩形象地稱作“羊毛疙瘩”,即打著一個個結的羊毛繩子。戰時,普米族用羊毛疙瘩聯絡、集合隊伍,在一根主繩上系若干根細繩,每根細繩代表一個村,一個個“疙瘩”則表示時間、人物、事件等。此外,還在繩上附上雞毛、辣椒、木炭、骨頭,分別表示“迅速”“激烈”“熾熱”“堅硬”等信息。

古代的印加帝國曾設名為chasqui的郵差,他們的工作是傳遞“公文”結繩。圖1.16所示為一名帶著結繩、吹著海螺的chasqui。

圖1.16 chasqui[16]


[16] 圖片來自維基百科。

2)結繩為約

常言道“口說無憑”,任何時代的人們都需要契據。因此,結繩還常被用作契約和憑證。

《九家易》曰:“古者無文字,其有約誓之事,事大大其繩,事小小其繩,結之多少,隨物眾寡,各執以相考,亦足以相治也。”

3)結繩以治

我們還能從古籍中找到結繩治國的痕跡。

“上古結繩而治,后世圣人易之以書契,百官以治,萬民以察?!边@句話出自《周易?系辭》。

“三皇結繩而天下泰,非惟象刑緝熙而已也。且太古知法,所以遠獄。”這句話出自《晉書?紀瞻傳》。

“若夫龍官之歲,鳳紀之前,結繩而不違,不令而人畏?!边@句話出自《隋書?刑法》。

“其吏治,無文字,結繩齒木為約。”這句話出自《新唐書?吐蕃傳》。

可見,結繩在古代有著法律效力。

1.1.4 契刻:躺在刻痕里的文明

設想一下,如果你像魯濱遜那樣因故漂流到一座荒島,身上除一把小刀之外,別無所有。在等待救援的日子里,除了用刀捕捉動物之外,你一定還會做一件事,那就是找一棵樹,用刀在樹干上刻“正”字以計算日期。

遠古部落和近現代的一些地方的人們也是這么做的。他們通常選用木、竹、石、玉,以及野獸的牙、角和骨等材料,削成棍狀、片狀或圓形等形狀,再用堅硬的石器或刀具刻出一道道痕跡來記錄各種數目,也有直接在洞壁上刻畫的做法。這種計數方式稱為契刻計數。

圖1.17所示為在阿爾卑斯山脈發現的契刻遺物,現藏于瑞士阿爾卑斯博物館。

圖1.17 契刻遺物[17]


[17] 圖片來自維基百科。

人類社會的發展往往有著驚人的相似性。同其他計數方式一樣,契刻也出現于世界的各個角落,如斯堪的納維亞、澳大利亞、愛沙尼亞、楚瓦什等。在我國,很多少數民族有使用契刻的記載。

契刻的功能與結繩十分相似,同樣可以用于計數和記事,并常用作書信和契約。

1.契刻計數

東漢經學家、訓詁學家劉熙在《釋名》一書中提到:“契,刻也,刻識其數也。”契刻最早便是用來計數的。

圖1.18所示為1960年在剛果伊尚戈發現的一根狒狒腓骨。它所處的時代距今兩萬多年,骨頭上密密麻麻的刻痕被部分學者視為原始的計數痕跡。

20世紀70年代,某原始社會墓葬中的49枚骨片在青海省樂都縣出土,其中40枚保存完好,各枚尺寸基本一致,約呈1.8cm×0.3cm×0.1cm的長方體狀,非常袖珍。其中35枚有1個刻口,3枚有3個刻口,兩枚有5個刻口,骨片上的刻口如圖1.19所示。這種不同刻口的靈活計數方法與我們平日使用的不同面額的鈔票相似。

。

圖1.18 狒狒腓骨[18]


[18] 圖片來自維基百科。

圖1.19 骨片上的刻口[19]


[19] 圖片來自《中國數學簡史》。

類似地,古代一些民族使用木片來記錄借貸金額與還款期限,每還清部分貸款或每過一天,就在木片上削去相應數量的刻口,待削完所有的刻口,便還清了所有貸款或到了約定的日期,如圖1.20所示。

隨著文明的進步,契刻的方式也變得豐富起來。新中國成立初期,在云南省晉寧縣出土了一塊西漢的青銅片,上面刻畫著各種人與動物的形象,為所記錄的數據標注出了明確的含義。青銅片上的一橫表示1,圓圈表示10;第二行記錄著13個囚犯、70頭牛、20匹馬,牛的下面則是200只羊,如圖1.21 所示。

圖1.20 計數用的木片[20]


[20] 圖片來自《我國民族地區原始統計計量記錄行為散論》。

圖1.21 晉寧縣出土的西漢青銅片[21]


[21] 圖片來自《中國數學簡史》。

在楚瓦什發現的木刻有著相似的痕跡,如用豎線表示1,用半根豎線表示1/2,用斜線表示5,用叉表示10,如圖1.22所示。

圖1.22 楚瓦什木刻[22]


[22] 圖片來自《計算機發展史》。

2.契刻記事

清代詩人陸次云編寫的《峒溪纖志》中有言:“木契者,刻木為符以志事也。”靈活的契刻就是文字的前身,記事于它而言簡直小菜一碟。

1)契刻通信

許多民族有過契刻通信的做法。明代文學家田汝成在《炎徼紀聞》一書中寫道:“白羅羅(彝族一支)不通文字,結繩刻木為信?!倍绕鸾Y繩,契刻通常載于片狀物上,更有書信的樣子。

1949年前,傈僳族靠口信、樹葉信和木片信進行通信。木片信便是刻有少量信息的木片,能夠官民兩用,人工傳遞。

民間的木片信多用作召集令。人們一般在木片上刻橫溝。橫溝越寬,事情就越大。一般刻雙數,表示事情不太緊急;極少刻單數,表示事情十萬火急。有時他們還會在木片上拴上辣椒,以強調事態嚴重。

官方的木片信用途多樣,有用于向寨子下達通知的,有用于安排相關行政長官負責派捐、派款、派糧的,也有用于通緝罪犯的,等等。

2)契刻為約

契約契約,契刻之約。

契刻十分適合用作收據和欠條。在木片上刻好金額,而后劈成兩半,雙方各執一半,到算賬時將兩半拼合,且刻痕必須相吻合,這樣連簽字畫押都省了,既方便又實用。

你有沒有聯想到什么?你或許會想到古代調兵遣將的虎符。國君、統帥各執一半虎符,兩半拼合,只有虎身上的銘紋相吻合方可調動軍隊。圖1.23所示為西安秦二世陵的一尊虎符雕塑。

圖1.23 虎符雕塑[23]


[23] 攝影:逸之。

3)契刻籌碼

當契刻用于交易、用作債券時,便具備了貨幣的屬性,這類契刻也稱為籌或籌碼。

19世紀,瑞士農民引山泉水灌溉田地,為管理用水,當地政府使用了“用水籌碼”,上面刻著用水時間;西伯利亞的糧庫用過“面包籌碼”;哥薩克人將籌碼作為各種報銷憑證;波蘭的一些偏遠地區用木刻作為錢票……如此種種,不勝枚舉。

3.契刻計算

具有計算能力的契刻也往往以籌為名,如中國的算籌、西方的納皮爾籌。

愛沙尼亞有一種特殊的計算籌碼,人們將木棍做成了插銷的形式,可以來回移動,能夠進行5個一組的加法運算,類似于后來的計算尺。而我國充滿智慧結晶的算籌最終摒棄了刻痕,靠木棍的組合擺放實現了各種復雜計算。

[2] 法語中,quatre表示4,dix表示10,vingt表示20。

主站蜘蛛池模板: 镇远县| 湖州市| 阿鲁科尔沁旗| 罗平县| 万安县| 景谷| 从化市| 湖州市| 贵南县| 蚌埠市| 颍上县| 开封市| 兴宁市| 永胜县| 商洛市| 麦盖提县| 遂川县| 米脂县| 石棉县| 波密县| 通河县| 溆浦县| 黎川县| 讷河市| 普洱| 绥江县| 寿宁县| 新竹市| 辉县市| 敦煌市| 阳春市| 义乌市| 铁力市| 台湾省| 富顺县| 深州市| 临安市| 香格里拉县| 龙州县| 灵石县| 华坪县|