Displaying extended context for query match # 22,910 in text YL201502248
<< Prev Next >>
    
 

〈 設計 程式 讓 電腦 下棋 〉 這 篇 論文 裡 的 一些 概念 , 今天 仍然 是 所有 電腦 遊戲 設計 的 核心 , 包括 擊敗 世界 棋王 卡斯帕洛夫 的 「 深藍 」 程式 在 內 。 夏濃 和 許多 數學家 一樣 , 對於 遊戲 和 解 謎 非常 狂熱 ; 別的 不 提 , 他 非常 喜歡 一 種 稱為 「 pangram 」 的 字母 遊戲 , 也 就 是 用 一 個 句子 包含 字母 系統 的 每 一 個 字母 。 他 在 這 個 領域 的 傑作 , 就 是 每 個 字母 只 用到 一 次 的 句子 , 例如 : 「 Squdgy fez , blank jimp crwth vox !
 
」 ( 古怪 土耳其帽 , 請 讓 特魯斯琴 消聲 ! ) 對於 語文 的 迷戀 , 對 從事 科技 最 尖端 工作 的 人 其實 非常 有用 。 新 的 概念 需要 新 的 名詞 , 而 夏濃 對 高科技 語言 做 了 不少 貢獻 。 他 要 尋找 一 個 字 來 表示 資訊 ( 用 數位 方式 來 說 , 就 是 一 或 G ) 的 一 個 單位 , 於是 最先 創造出 「 二進制 數位 」 ︵ binary digit ︶ 的 用語 , 但 沒 多久 就 縮減為 「 位元 」 ( bit ) 。 至今 , 電腦 及 其他 數位 裝置 的 容量 仍然 以 位元 作 單位 ; 如果 一 台 個人電腦 的 等級 是 六十四百萬 位元 , 這 就 意味 著 它 含有 足夠 儲存 六千四百萬 位元 ( 或是 有 清楚 區別 的 資訊 片段 ) 的 隨機 存取 記憶體 。 這 個 名詞 如今 被 世界 各 地 程式 設計師 使用 , 其中 有 很多 人 大概 從來 沒 聽 過 夏濃 的 名字 。 儘管 如此 , 夏 濃倒 一點 也 不 介意 。 他 不 是 喜歡 自吹自擂 的 人 。 在 MIT 教 資訊 理論 那 幾 年 , 他 從來 沒 提 過 自己 就 是 創造 這 門 學科 的 人 , 如果 有 用功 的 學生 知道 他們 的 教授 正 是 開山 祖師 的 時候 , 他 還 會 覺得 有點 尷尬 。 二 GG 一 年 初 , 貝爾 實驗室 為 了 表示 對 夏濃 的 尊敬 , 特別 舉辦 了 一 場 展覽 , 提到 他 在 二十世紀 提出 的 許多 概念 已經 變成 新 世紀 日常 生活 的 重要 部分 。 夏濃 並 沒有 出席 開幕式 。 幾 個 星期 後 , 他 過世 了 , 只 在 幾 份 報紙 上 出現 簡短 的 紀念 文字 。 好像 幾乎 沒有 什麼 人 記得 他 對於 現代 世界 發展 的 影響 有 多 大 。 一九三七年 , 夏濃 正在 處理 二進制 電路 設計 的 問題 , 當時 的 數位 電腦 使用 一 種 稱為 繼電器 的 磁性 開關 。 繼 電器 看起來 就 像 個 捕鼠器 , 一 端 有 個 電磁體 。 電流 到 磁體 的 時候 , 它 會 吸引 捕鼠器 的 金屬桿 , 金屬桿 就 會 翻轉 , 因此 將 開關 打開 。 電流 一切 斷 , 磁體 的 吸力 就 會 停止 , 金屬桿 就 會 彈回去 , 將 繼 電器 關掉 。 問題 是 如何 設計 這些 繼電器 組成 的 陣列 , 好 讓 它們 以 適當 的 順序 切換 開關 , 將 二進制 數字 加起來 。 大家 都 認為 這 是 極為 艱困 的 工作 , 需要 設計師 仔細 考量 那麼多 不同 的 可能 變化 , 而 這 往往 會 讓 人 抓狂 。 今天 , 設計 電腦 架構 這 種 繁瑣 而 重複性 高 的 工作 , 已經 留給 電腦 代勞 了 。 但 在 一九三七年 , 根本 沒有 諸如 此 類 的 東西 , 就 需要 靠 人 想出 二進制 邏輯 的 設計 。 就 在 苦苦 思考 這 個 問題 的 同時 , 夏濃 剛好 看到 關於 布爾 邏輯 的 教科書 , 突然 領悟到 一 件 事 。 布爾 的 AND 運算 、 OR 運算 及 其他 邏輯 函數 的 方程式 , 將 決策 的 工作 化約為 一 組 雙重性 : 是 或否 、 零 或 壹 、 真 或 假 , 這些 配對 可以 像 開關 的 二元性 那樣 表示 : 「 開 」 或 「 關 」 。 簡而言之 , 設計 二進制 邏輯 電路 的 艱鉅 工作 已經 有 人 做 過 了 — — 他 就 是 布爾 。 布爾 仔細 整理出來 的 方程式 可以 當作 將 電鍵 開關 執行 邏輯 運算 的 準則 。 於是 , 夏濃 寫道 , 「 利用 繼電器 電路 的 方法 , 確實 有 可能 執行 複雜 的 數學 運算 。 數字 可以 用 繼電器 和 步進 開關 的 位置 來 表示 , 而且 可以 讓繼 電器組 之間 的 互連 來 表現 各 種 數學 運算 。 」 在 他 的 論文 結尾 處 , 夏濃 說明 如何 連接 一 系列 繼 電器 , 執行 布爾 AND 和 OR 運算 , 將 兩 個 二進制 數字 加起來 。 夏濃 在 論文 中 提出 的 技法 , 普遍 在 數位 機器 上 採用 。 在 現代 的 電腦 裡 , 積體電路 內嵌 的 電晶體 早已 取代 磁性 繼電器 , 但 二進制 開關 的 原理 仍然 相同 。 電腦 的 電路 系統 是 一連串 的 電晶體 , 一 個 後面 接著 另 一 個 。 這 個 電路 就 好比 一 條 長長 的 灌溉 水管 , 上面 裝有 一 系列 的 水龍頭 , 可以 控制 水 的 流動 。 如果 一 號 水龍頭 是 開啟 的 , 水 就 可以 繼續 流到 二號 水龍頭 ; 如果 這 一 個 也 是 開啟 的 , 水 就 可以 繼續 流向 三號 水龍頭 。 只要 在 AND 電路 __UNDEF__ 電流 __UNDEF__ 開關 一 開關 二 __UNDEF__ 開關 三OR 電路 __UNDEF__ 電流 __UNDEF__ 開關 一 __UNDEF__ 開關 二 __UNDEF__ 開關 三 __UNDEF__ 正確 的 時刻 開啟 正確 的 水龍頭 組合 , 農夫 就 可以 將 水流 導向 田地 的 任何 一點 。 在 電腦 的 電子 輸送 路線 裡 , 各 個 電晶體 都 可以 發揮 水龍頭 的 作用 ; 如果 一 號 電晶體 設為 開啟 , 電流 就 可以 繼續 流向 二號 電晶體 , 以 此 類推 。 只要 在 正確 的 時間 打開 正確 的 電晶體 組合 , 電腦 設計師 就 可以 將 電流 送到 電路 中 的 任何 一 點 。 為 了 設定 正確 的 組合 , 電腦 設計 者 主要 依靠 三 種 基本 的 布爾 電路 。 依照 布爾 的 AND 運算 , 最 簡單 的 AND 電路 是 由 三 串聯 的 電晶體 組成 的 , 因此 唯有 當 一 號 開關 「 及 」 二號 開關 都 是 開啟 的 狀況 下 , 三號 開關 才 會 開啟 。 這 種 配置 看起來 像 這樣 : 如果 一號 開關 或 二號 開關 是 關閉 的 , 電流 就 會 被 擋住 , 則 三號 開關 一定 是 關閉 的 。 只有 在 一號 「 及 」 二號 都 是 開啟 的 情況 下 , 電 才 會 繼續 流到 三 號 , 將 它 打開 。 簡單 的 「 或 」 電路 可以 用 三 個 開關 的 配置 來 執行 : 如果 一號 開關 和 二號 開關 都 是 關閉 的 , 電流 就 會 被 擋住 , 則 三號 開關 一定 是 關閉 的 。 但 在 這 種 電路 裡 , 電流 可以 透過 一號 開關 或