計算的實質是什麼

計算的本質是獲得信息的一種過程。是人類分析問題所採用的方法。計算是動態的,而信息的獲得是計算的靜態延伸。導讀計算與人類由於現代人類各個課題學科繁多,涉及面廣,而分類又細。而當今的每個學科都需要進行大量的計算。計算是一個非常奇妙的概念:計算活動幾乎每個人都很熟悉,卻很少有人清晰地説出計算的本質。

計算的實質是什麼

近代,通過圖靈、邱奇等數學家的努力,逐漸形成了下面這個佔統治地位的計算本質理論:形式上,計算是符號之間按照一定關係(用程序描述的函數關係)進行的關聯運動;內容上,符號有一定的語義,表示現實世界中事物的某種狀態。

毋庸置疑,這個計算本質理論確實揭示了計算的一些深層特點;但是,認真分析一下,我們也不難發現,這個理論也存在很大的問題。

一方面,這種理解方式顯然不夠準確。按照這種描述,很多和一般計算完全不同的事物,也同樣被納入了計算的範疇。比如,可以通過符號關聯運動模擬的生命運動甚至宇宙演化。

另一方面,這種理解方式也不夠深刻。根據這種描述,我們既無法看清計算是用來做什麼的,也無法看清計算為何會衍化出數學這門博大精深的學科。

從形式上來看,所有計算過程涉及三個部分:以編碼模式輸入一定量的信息,然後經過一系列變化(操作),最後產生一定量的輸出。

就拿最簡單的計算——幼兒園的小朋友通過扳手指計算1加2來説,他們先打開左手的1根指頭,接着打開右手的2個指頭,然後將兩個手並在一起,數一數,最後得出結果3。這個過程雖然簡單,但它完全是以此完整的計算過程,同樣也可以分為三個過程:

輸入信息:左手的1根指頭,右手的2根指頭;

操作信息:將兩手放在一起,並數總共有多少根手指;

輸出信息:將上面所得結果讀出來,或者寫在紙上。

如果藉助電子計算機實現1加2,那麼就是將1和2分別用二進制表示為01和10,並分別存入兩個寄存器,這對應於輸入信息;然後在控制器的控制下,由基於電子電路實現的布爾代數,即運算器計算出結果後保存在另一個寄存器中,這是操作信息;最後將這個結果顯示在電子計算機屏幕上或者用代碼形式輸出,就完成了整個計算過程。而如果使用比較原始的差分機,則是通過由蒸汽機提供的動力,帶動機械齒輪完成相似的過程,如果是量子計算機,則通過量子力學實現相似的過程。

從中我們可以看出,不管是在什麼時代利用什麼原理,計算的形式和過程都是相似的,它必須通過某個物理系統,將外部世界某方面的表示轉換為此物理系統內部的狀態表示,並在具體的算法的指導下獲得計算結果,最後再次將結果轉換為外部世界某方面的表示。