《CSAPP》第一章小結

2021-08-19 15:25:18 字數 640 閱讀 6180

從乙個hello.c程式講起。

hello.c經過預處理把頭檔案的內容插入程式中變成hello.i。

hello.i經過編譯器處理轉為組合語言版本的hello.s,

hello.s經過彙編器處理變為二進位制的hello.o,並且經過鏈結printf.o變為可執行程式。

執行是經過把本地磁碟的可執行的hello程式通過匯流排取到主存,執行。

輸入通過i/o匯流排到螢幕上。

其中使用資料時可能會經過l1,l2,l3等多級快取。

這快取啊,就跟食物鏈似的,越在頂端越小(空間小),越值錢,速度也越快,本質上和人類是一樣的,最終能夠操縱低檔的人的,只有上等人(暫存器可以利用l1,l1可以利用l2以此類推)。

任何i/o裝置都是可以抽象成檔案的,檔案也可以是乙個位元序列(存在於磁碟的),虛擬儲存就是抽象的主存+磁碟。

程序就是抽象主存,處理器,i/o裝置,虛擬機器是對整個計算機的抽象。

程序是可以並行的,也叫執行緒級併發,一次性處理多條指令叫指令級並行。

比較重要的是amdahl定律,它不僅僅用在計算機發展方面,可以描述多個事情。

s=t1/t2=1/(1-a+a/k)

k是提公升比例,a是影響因子。

如果想讓計算機效能獲得較大的提公升,k,a都要大。當k趨於無窮s=1/1-a。

第一章小結

第一章 本章介紹了c 程式的基本結構,以及程式的基本語法單位 字 詞和表示式構成的語法規則。程式的主要功能是描述資料和處理資料.資料表現為常量和變數。常量是程式執行中不能改變的量,包括常數和存放在記憶體單元中的標識常量。變數是可改寫的記憶體單元中的標識。所有常量 變數都屬於某種資料型別。型別決定了資...

第一章教程小結

第一章的教學目標,通過熟悉c 的基本語法和程式設計概念,讓我們軟體開發手段在形式上從原始的手工作坊模式進入正規的大兵團作戰模式。講解c 語言的基本框架和控制台模型 程式的執行模型和rpg世界的模型藍圖 講解指令的基本語法和控制台螢幕輸出的基本方法 講解變數概念與控制台的兩種獲取鍵盤輸入的方法,包含庫...

c primer第一章小結 1

第一章 開始 1.endl 稱為操縱符 manipulator 可重新整理與裝置相關聯的緩衝區。在重新整理緩衝區時,使用者可立即看到寫入到流中的輸出,一旦程式執行出現問題,可能在 緩衝區的資料沒有來得 顯示,所以加上end可保證資料全部輸出。2.cin,cout之所以可以級聯使用,是因為它們返回的是...