數據處理器模型
先將計算機定義為一個數據處理器,即一個接受輸入數據、處理數據並產生輸出數據的黑盒。
這個模型的機器能夠完成的操作的類型和數量不明。
圖靈模型
圖靈模型添加了一個額外的元素一一程序到不同的計算機器中,程序是用來告訴計算機對數據進行處理的指令集合。
在這個圖靈模型中,輸出數據依賴於兩方面因素的作用:輸入數據和程序,對於相同的輸入數據,如果改變程序,則可以產生不同的輸出數據, 類似地,對於同樣的程序,如果改變輸入數據,則其輸出結果也將不同;最后,如果輸入數據和程序保持不變,輸出結果也將不變。
1.相同的程序,不同的輸入數據
圖1-3顯示了對於同樣的程序(排序),輸入不同的數據時,盡管程序相同,但因為輸入的數據不同而輸出不同的結果。
2.相同的輸入數據,不同的程序
圖1-4顯示了對於不同的程序,輸入相同的數據時的情形。
每個程序使計算機對相同的輸入數據執行不同的操作。
第一個程序是使輸入數據按大小順序排列,第二個程序是使所有的 數據相加,第三個程序是找出輸入數據中最小的數。
3.相同的輸入數據,相同的程序。
我們希望無論何時對於同樣的輸入數據和程序,其輸出結果都一致;換句話說,當程序在輸入相同的數據運行時,我們希望有相同的輸出結果。