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