由於小弟最近決定考研,故而再次捧起本書,決定把第
一、二章解答補齊。
1. 簡述暫存器、記憶體以及外存的區別
暫存器位於cpu內部,輔助cpu完成指令執行的工作。其主要作用是減少訪問記憶體的次數,提高指令執行的效率。
記憶體位於cpu外部而計算機內部,是計算機的主儲存器,主要用於儲存電腦程式。與暫存器相比,記憶體的容量要大很多,但cpu訪問記憶體要比訪問暫存器慢很多。
外存屬於計算機的外圍裝置,是大容量的低速儲存部件。用於永久性的儲存計算機的各種資料。與記憶體和暫存器相比,除了訪問速度低很多外,斷電後其儲存器裡的內容也不會丟失。而暫存器和記憶體,斷電後裡面內容就會消失。
2. 簡述馮·諾依曼計算機的工作模型
待執行的程式從外存裝入到記憶體中,cpu從記憶體中逐條地取程式中的指令執行;程式中所需要的資料從記憶體或外設上獲得,程式執行中產生的中間結果儲存在記憶體中,程式執行的結果通過外設輸出。上述計算過程的本質是通過不斷地改變程式的狀態來實現計算,程式的狀態由記憶體單元的資料構成,狀態的轉換是由指令來實現。
3. cpu能執行哪些指令?
算術指令、比較指令、資料傳輸指令、執行流程控制指令。
4. 什麼是軟體,軟體是如何分類的?
計算機軟體是計算機系統中的程式以及有關文件。
軟體可分為:應用軟體、支撐軟體和系統軟體。
5. 簡述軟體的生存週期
乙個軟體從無到有,從有到亡,通常要經歷乙個過程,這個過程稱之為軟體的生存週期。軟體的生存週期一般分為以下幾個階段:軟體需求分析、軟體設計、程式設計實現、測試、執行與維護。
6. 機器語言、組合語言以及高階語言的不同之處是什麼?
機器語言是面向特定計算機、能夠被計算機直接理解的低階語言,採用指令編碼和資料的儲存位置來表示操作以及運算元。用機器語言寫的程式可以直接在計算機上執行。
組合語言類似於機器語言,也是面向特定計算機的低階語言,組合語言是用符號名(註記符)來表示操作和運算元位置,以增加程式的可讀性。用組合語言寫的程式必須翻譯成機器語言才能執行。
高階語言是指面向程式設計師,使人容易理解和有利於人們對解題過程進行描述的語言。顯然,由高階語言編寫的程式,需要經過翻譯才能在計算機上執行。翻譯的方法一般有兩種,編譯和解釋。
7. 簡述編譯與解釋的區別
編譯是指把高階語言程式(稱為源程式)首先翻譯成功能上等價的機器語言程式(稱為目標**程式)或者組合語言程式(在通過匯程式設計序翻譯成目標**程式),然後執行目標**程式。在目標**程式的執行中,不再需要源程式。
解釋則是指對源程式中的語句進行逐條翻譯並執行,翻譯完了程式也就執行完了,這種翻譯方式不產生目標程式。一般來說,編譯執行比解釋執行效率要高。
8. 簡述程式設計的步驟
程式設計一般分為如下五個步驟:明確問題,系統設計,用某種語言進行程式設計,測試與除錯,執行與維護。
9. _book, car, car_1, ca1r, car1_car, car_type,這幾個是合法的c++識別符號。值得一提的是,_123,_5_6,也是合法的識別符號。
10. 簡述c++程式的編譯執行過程。
編譯:利用某個c++編譯器對儲存在外存中的c++源程式進行編譯,編譯結果為目標檔案,儲存到外存,目標檔案的檔名通常為*.obj。
連線:由c++聯結器,把同乙個程式的不同目標檔案連線起來形成乙個完整的可執行程式儲存到外存。可執行檔名通常為*.exe。
執行:通過作業系統提供的應用程式執行機制,把某個可執行檔案裝入記憶體,執行其中的程式。
C Primer 習題解答 第一章
自己動手做習題,加深理解。這些都是自己做的,如果有不對或不妥的地方,請指出,謝謝。習題 1.3編乙個程式,在標準輸出上列印 hello world 解答 include int main 習題1.4 我們的程式利用內建的加法操作符 來產生兩個數的和。編寫程式,使用乘法操作符 產生兩個數的積。解答 i...
程式設計珠璣 第一章習題解答
4.生成 0,n 的之間k個不重複的隨機整數。include include include include using namespace std const int n 10000000 const int k 10000000 int randint int l,int r int a n i...
python第一章筆記 第一章 基礎
參與除法的兩個數中有乙個數為浮點數,結果也為浮點數 如 1.0 2,1 2.0,1.0 2.0 python print 1.0 2 結果 0.5 print 1 2.0 結果 0.5 print 1.0 2.0 結果 0.5 整數 整數,計算結果的小數部分被截除,只保留整數部分 不會四捨五入 如 ...