第二章 計算機的語言:指令系統(tǒng)
指令系統(tǒng)是計算機硬件與軟件之間的接口,它定義了計算機能夠識別和執(zhí)行的所有基本操作的集合。一個完整的指令系統(tǒng)通常包含以下幾類指令:
- 數(shù)據(jù)處理指令:用于對數(shù)據(jù)進行算術運算(如加、減、乘、除)和邏輯運算(如與、或、非、移位)。
- 數(shù)據(jù)傳送指令:負責在寄存器、內(nèi)存和輸入/輸出設備之間移動數(shù)據(jù)。
- 程序控制指令:用于改變程序的執(zhí)行順序,包括跳轉、調(diào)用子程序和返回等指令。
- 輸入/輸出指令:管理計算機與外部設備(如鍵盤、顯示器、磁盤)之間的數(shù)據(jù)交換。
指令的格式通常由操作碼和地址碼兩部分組成。操作碼指明要執(zhí)行的操作,地址碼則給出操作所涉及的數(shù)據(jù)(操作數(shù))的位置或直接值。指令的設計直接影響計算機的性能和編程的靈活性。
第四節(jié) 計算機中的數(shù)據(jù)表示
計算機內(nèi)部所有信息,無論是數(shù)字、文本、圖像還是聲音,最終都以二進制形式(0和1)表示。理解數(shù)據(jù)如何被編碼是理解計算機工作的基礎。
1. 數(shù)值數(shù)據(jù)的表示
- 無符號整數(shù):所有二進制位都用于表示數(shù)值大小。
- 有符號整數(shù):最高位用于表示符號(0為正,1為負),其余位表示數(shù)值。常用表示法有原碼、反碼和補碼。現(xiàn)代計算機普遍采用補碼表示法,因為它統(tǒng)一了加減法運算,且“零”的表示唯一。
- 浮點數(shù):用于表示實數(shù)(帶小數(shù)點的數(shù))。通常采用類似科學計數(shù)法的方式,由符號位、階碼(指數(shù))和尾數(shù)(有效數(shù)字)三部分組成。IEEE 754標準是浮點數(shù)表示的通用規(guī)范。
2. 非數(shù)值數(shù)據(jù)的表示
- 字符編碼:每個字符被賦予一個唯一的二進制代碼。最常見的標準是ASCII碼(美國信息交換標準代碼)和涵蓋全球幾乎所有文字的Unicode(其常用實現(xiàn)方式是UTF-8)。
- 圖像、音頻與視頻:這些模擬信號需要通過采樣和量化轉換為離散的數(shù)字信號,并以特定的文件格式(如JPEG, MP3, MP4)進行存儲和傳輸。
數(shù)據(jù)的表示方式?jīng)Q定了計算機能處理的信息范圍和精度,也影響著存儲和計算的效率。
計算機軟件:數(shù)據(jù)處理服務
硬件提供了執(zhí)行指令和處理數(shù)據(jù)的物理基礎,而軟件則是驅動計算機完成特定任務的程序和數(shù)據(jù)集合。軟件是用戶與硬件之間的橋梁,它將用戶的需求轉化為一系列計算機可以執(zhí)行的指令。從數(shù)據(jù)處理服務的視角看,軟件系統(tǒng)可分為多個層次:
- 系統(tǒng)軟件:直接管理計算機硬件資源,并為應用軟件提供運行環(huán)境。核心是操作系統(tǒng)(如Windows, Linux, macOS),它負責進程管理、內(nèi)存管理、文件系統(tǒng)和設備驅動等。編譯器、匯編器、解釋器等語言處理程序也屬于系統(tǒng)軟件,它們將高級語言程序“翻譯”成機器能執(zhí)行的指令。
- 應用軟件:直接面向用戶,解決特定領域的問題,提供具體的數(shù)據(jù)處理服務。例如:
- 辦公軟件(如WPS, Microsoft Office):處理文檔、表格、演示文稿等數(shù)據(jù)。
- 數(shù)據(jù)庫管理系統(tǒng)(如MySQL, Oracle):高效地組織、存儲、檢索和管理大量結構化數(shù)據(jù)。
- 多媒體處理軟件(如Photoshop, Premiere):編輯和處理圖像、音頻、視頻數(shù)據(jù)。
- 科學計算與工程軟件:進行復雜的數(shù)值分析和仿真。
- 支撐軟件/工具軟件:輔助軟件開發(fā)、維護和管理,如版本控制工具(Git)、集成開發(fā)環(huán)境(IDE)、測試工具等。
軟件通過調(diào)用指令系統(tǒng)中提供的各種操作,對以特定格式表示的數(shù)據(jù)進行處理、轉換和呈現(xiàn),最終為用戶提供有價值的服務。理解“指令系統(tǒng)-數(shù)據(jù)表示-軟件服務”這條主線,是掌握計算機工作原理的關鍵。