設置好了分類機後,馮諾打開了機器的開關,卡片開始唰唰地分類了。他關照李加奈和錢羽之看着機器,就和馮珊一起回機房檢查服務器的運行情況了。
快中午的時候,馮諾回到了車間裡。卡片已經分類完成了,他看了看錶,2個小時多一點。對於分類1萬張卡片來說,速度還挺快。不過李加奈和錢羽之卻沮喪地坐在機器旁。
原來並沒有找出任何符合條件的卡片。
這倒很奇怪。馮諾想了想,又看了看分類機的情況。他注意到第9號卡袋裡沒有任何卡片,第10號卡袋卻有幾張卡片,這說明這些卡片是倒在了最後一關上。他撿起了10號卡袋裡面的一張卡片看了一下。——這些卡片之前已經用譯碼機在頂端打印了每列對應的數字。
“2750。這個戶主不叫林光輝。”馮諾說。“你們查查,3354,這是林,沒問題。然後是2567,2750。”
“林廣灰,這個人叫林廣灰……”李加奈又好氣又好笑。
“是不是打孔時候打錯了?”馮珊問。
“哼,”馮諾哼了一聲,他倒覺得此人八成是廣州難民營收容的難民,所以帶了一個“廣”字,至於“灰”,大概是收容當天起名用得都是各種顏色吧。
“原籍:12216,這是福建吧。職業:農民。成份:軍戶。”——看來這戶八成是和百圖林氏沒什麼關係的了。
李加奈根據這些信息,在戶籍信息表的“福建”、“農民”那一疊中,找出了林廣灰家成員的“常住人口登記表”,抄錄了必要的信息,寫成一份證明文件。還在後面附加了信息查閱過程的說明,馮諾也在上面簽了字。
元老們現在都很自覺地把能看到的問題解決掉。——不論是不是自己一畝三分地的事情,總歸這是元老院的事情,那也就是自己的事情。
都寫好了,李加奈就準備把證明送出去。
“加奈,你就不用回來了,下午去天地會辦理一下調職手續,把檔案拿過來。”馮諾吩咐道。
隨後,他讓馮珊和錢羽之整理卡片,分別按戶籍所在地、姓氏、原籍和職業統計人數,然後與人工計算的結果作對比,正式測試分類機的樣機。
正式轉換工作的一個星期後,李加奈在回家的時候收到裡一封發件人是一個郵箱號碼的信件。她沒有左顧右盼,立刻拿起信封,迅速塞進了口袋。
晚上,李加奈迫不及待地找機會拆開了信件,裡面是沒有任何擡頭和落款,只有簡單的幾句密語指示。她又仔細覈對了數處暗記,確定無誤後才強自按捺內心的激動,銷燬了信件。
當李加奈如約到了信中指示的聯絡地點時,下巴都快驚掉下來了,沒想到經常來電子設備車間指導他們技術的賈組長竟然是自己的上線。她可從來沒有察覺到過。
賈苯卻沒什麼意外的表情,他沒有解釋爲什麼會中斷和她的聯繫――李加奈自然也沒有問――只是簡單詢問了李加奈這段時間的情況,又收下了她交上來的工作彙報和個人小結。指示她“一切照過去方針辦”後,就匆匆離開了。
第二天,李加奈精神飽滿的回到車間時,馮諾正在指導馮珊和錢羽之使用分類機,還在黑板上寫了不少東西。見到李加奈回來,他點點頭示意她也過來一起聽。
分類機的測試很成功,只是,不能處理“或”條件的確是個很大的侷限。關於如何改進,馮諾心裡已經有了一個大致的思路,不過今天他要以此爲例給學生們上一節課。
這其實已經涉及到了計算機的核心原理。他要的並不是簡單的操作員,而是能實際運用的程序員。
“今天,我們從理論上來分析一下,我們的分類機能解決什麼樣的問題,不能解決什麼樣的問題。”
“首先,排序。毫無疑問,這個問題是可以解決的,我們把10個讀卡單元上的讀卡觸輥對準同一列的0-9,則卡片就會按照這一列的數字被推送到10個卡袋中,手工把卡片重新合成一疊時,這些卡片就是按這一列數字的大小排序的了。”
“其次,單條件分類。‘把所有卡片分爲男性和女性兩疊’。這個完全可以完成,只需要打開1個讀卡單元,對準性別列的0孔,性別爲0,也就是女性,會被推入卡袋,男性則不會。”
“第三,多條件分類。這就需要具體分析了。我給你們出幾個問題,你們想一下怎麼用分類機完成。第一個問題,假設我們現在有整個東亞地區的戶籍卡片,我要找出海南臨高加來公社的卡片,該如何操作?羽之,你說一下。”
“讓1~7號讀卡單元依次篩選出戶籍所在地爲1001014的卡片。”錢羽之回答道。
“正確。加奈,第二個問題,我依然有整個東亞地區的戶籍卡片,現在想找出三亞大區除奴隸以外的卡片,該如何操作?”
“三亞大區包括兩個縣級單位,三亞榆林,代碼10011,三亞田獨,代碼10012,其下屬奴隸區代碼爲1001299。”
“讓1~4號讀卡單元依次篩選出戶籍所在地前4位爲‘1001’的卡片;然後讓5號讀卡單元把戶籍所在地第5位爲‘1’的卡片推入5號卡袋,這些是三亞榆林的卡片;讓6號讀卡單元把戶籍所在地的第5位不是‘2’的卡片推入6號卡袋,此時機器上剩餘的是三亞田獨的卡片;讓7號讀卡單元把戶籍所在地第6位不爲9的卡片推入7號卡袋,這些是三亞田獨11~89公社的卡片;讓8號讀卡單元把戶籍所在地第7位不爲9的卡片推入8號卡袋,這些是三亞田獨90-98公社的卡片,此時機器上剩餘的就是三亞田獨的奴隸卡片了。合併5號、7號、8號卡袋的卡片即爲所要的結果。”李加奈考慮了半天才回答。
“很好,加奈,正確。”馮諾有點意外。
“馮珊,現在我有臨高的全部戶籍卡片,一,找出住在十三村和百仞公社的姓名爲‘劉四’的人;二,找出原籍爲福建和海南的人。你試試這兩個問題。”
“這兩個問題都不能解決。”馮珊想了一下後回答道。
“爲什麼?”
“原因不同,第一個問題不能解決是因爲讀卡單元不夠。”馮珊說。
“要確保卡片上的姓名是“劉四”,需要確保卡片上存儲姓名的列是“劉四”的8位區位碼,這需要8個讀卡單元排除不符合條件的卡片,可以說,到達第9個讀卡單元的所有卡片,姓名都是“劉四”;”
“但是,此時分類機只剩下兩個讀卡單元了,百仞公社是‘11’,十三村是‘18’。可以用9號讀卡單元把戶籍所在地的第6位‘公社’不爲‘1’的卡片排除,此時機器上剩餘的是11~19公社的‘劉四’。其中,可以用10號讀卡單元把第7位爲‘1’的卡片推入卡袋,這是‘百仞公社的劉四’,但不足以把‘十三村的劉四’從剩餘卡片中分類出來了。所以這個應用不能被完成。”
“不過,如果分類機上再有一個讀卡單元,這個應用就可以解決了。”
“嗯,不錯。第二個問題呢?”
“第二個問題並未用到所有讀卡單元,而是我們現在的分類機從設計上是不能解決的。”
“說一說。”
“原籍海南,代碼爲100,原籍福建,代碼爲122。我們可以首先用1號讀卡單元選出戶籍所在地第1位爲‘1’的卡片。但是之後如果我們選擇推出第2位爲0的卡片,則就不能繼續篩選第3位也是0的卡片,會導致海南(100)與臺灣(101)、濟州島(102)的卡片無法再分離;如果我們選擇推出第2位不爲0的卡片,則會導致福建的卡片被推入卡袋,無法進一步與其他卡片分離。”
“很好。這就是鍾首長說的不能做‘或運算’的問題。他說得還比較籠統,我們現在從理論上分析一下,爲什麼這個問題我們解決不了。”馮諾走到黑板前說道。
“所謂理論上的分析,就要把像之前我問你們的那些一個個具體的問題,抽象成一個一般的問題進行研究。”
“我們要找任何卡片,總有一系列的條件對目標卡片進行描述,這一系列條件,我們叫做‘命題’。這些條件反應在篩選手段上,就是穿孔卡片上的某個孔‘是否’穿孔。注意,也就是說,每個命題存在兩種可能性,是和否,我們稱之爲‘真、假’。”
“現在我們有了兩個概念,命題、真假。最終,一張卡片,是不是我們所要的卡片,往往有許多條件共同限定,每個條件是一個命題,那麼我們的最終目標,就是由許多命題合成的一個新命題,我們可以稱之爲‘複合命題’,組成複合命題的每項條件,可稱爲‘簡單命題’。自然,‘複合命題’也有‘真假’。”
他在黑板上寫上:命題、真假、複合命題、簡單命題。
------------------------------
下次更新:第七卷-兩廣攻略篇60節