1. 計算機基礎知識
陳述性知識
:關于事實的描述。如果滿足y × y = x,那麼x的平方根就是數值y。
程式性知識
:說明“如何做”,描述的是資訊演繹的過程。
算法
:是一個有窮指令序列,它在給定的輸入集合中執行時,會按照一系列定義明确的狀态進行,并最終産生一個輸出結果。
解釋器
:可以執行任意合法指令集的程式(這樣計算機就能夠計算任何可以使用基本指令集描述的問題)。
計算機的功能
:執行計算與儲存計算結果,操作的程式和資料都存儲在記憶體中。通常都有一個程式計數器指向記憶體中的特定位置,通過執行這個位置上的指令,計算過程得以開始。
控制流
:解釋器執行一個測試,然後根據測試結果可能跳到指令序列的其他位置繼續執行。
通用圖靈機
:這種機器具有無限的存儲容量,即一條無限長的紙帶。可以在紙帶上面寫入0和1,以及一些非常簡單的初始指令,進而對紙帶進行移動、讀出和寫入等操作。
邱奇-圖靈論題
:如果一個函數是可計算的,那麼一定可以通過對圖靈機進行程式設計實作這種計算。邱奇-圖靈論題中的“如果”非常重要,并非所有問題都可以通過計算求解。
停機問題
:不存在這樣一個程式:對于給定的任意程式P,當且僅當P永遠運作時輸出true。
圖靈完備
:邱奇-圖靈論題可以直接推導出圖靈完備性這個概念。如果一門程式設計語言可以模拟通用圖靈機,才可以說它是圖靈完備的。
程式設計基本思想的核心
:簡單來說,就是組裝操作序列的過程。
2. 程式設計語言的組成
基本結構
:Python語言中的基本結構包括字面量(例如,數值3.2和字元串'abc')和中綴操作符(例如,+和/)。