第一章 計算機系統漫遊----《深入理解計算機系統》 第二版

 第一章 計算機系統漫遊----《深入理解計算機系統》 第二版

今天開始惡補計算機基礎,第一本書《深入理解計算機系統》 第二版

原文:像hello.c這樣只由ASCⅡ字符構成的文件稱爲文本文件,所有其他文件都稱爲二進制文件。

有點疑惑,百度了下,各種說法都不一樣,如下:


從文件編碼的方式來看,文件可分爲ASCII碼文件和二進制碼文件兩種。 
ASCII文件也稱爲文本文件,這種文件在磁盤中存放時每個字符對應一個字節,用於存放對應的ASCII碼。例如,數5678的存儲形式爲: 
ASC碼:    00110101   00110110   00110111   00111000 
   
          ↓                        ↓                   ↓                    ↓ 
十進制碼:  
   5                       6                   7                    8   共佔用4個字節。

ASCII碼文件可在屏幕上按字符顯示,   例如源程序文件就是ASCII文件,用DOS命令TYPE可顯示文件的內容。   由於是按字符顯示,因此能讀懂文件內容。 

 二進制文件是按二進制的編碼方式來存放文件的。   例如,   數5678的存儲形式爲:   00010110   00101110只佔二個字節。二進制文件雖然也可在屏幕上顯示,   但其內容無法讀懂。C系統在處理這些文件時,並不區分類型,都看成是字符流,按字節進行處理。   輸入輸出字符流的開始和結束只由程序控制而不受物理符號(如回車符)的控制。   因此也把這種文件稱作“流式文件”。

找了給關於文本文件的帖子:http://www.amobbs.com/forum.php?mod=viewthread&tid=752335


1.7.1節講到的進程的虛擬地址空間,其中包括用戶棧,編譯器用它來實現函數調用,這裏的編譯器和編譯系統中把hello.i編譯成hello.s的編譯器(ccl)相同嗎?

根據我的理解,編譯器的功能應該是用來把源程序編譯成可執行目標文件的,進程的虛擬地址空間是用來執行可執行目標文件的,那既然已經是可執行目標文件了,這裏講的編譯器用它(用戶棧)來實現函數調用又是什麼意思,編譯器在這裏的功能是什麼?


超線程的概念


發佈了30 篇原創文章 · 獲贊 25 · 訪問量 42萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章