第2章 計算機指令集結構設計
1. 堆棧型機器
其CPU中存儲操作數的主要單元是堆棧。
2. 累加器型機器
其CPU中存儲操作數的主要單元是累加器。
3. 通用寄存器型機器
CPU中存儲操作數的主要單元是通用寄存器。
4. 三種類型指令集結構
根據CPU內部存儲單元類型,將指令集結構分爲堆棧型指令集結構、累加器型指令集結構和通用寄存器型指令集結構。
5. 通用寄存器型指令集結構的三種類型
寄存器-寄存器型(RR:Register-Register)
寄存器-存儲器型(RM:Register-Memory)
存儲器-存儲器型(MM:Memory-Memory)
6. CISC
複雜指令集計算機。
7. RISC
精簡指令集計算機。
8. 指令集結構的完整性
在一個有限可用的存儲空間內,對於任何可解的問題,編制計算程序時,指令集所提供的指令足夠使用。
9. 指令集結構的規整性
沒有或儘可能減少例外的情況和特殊的應用,以及所有運算都能對稱、均勻地在存儲器單元或寄存器單元之間進行。規整性主要包括對稱性和均勻性。
10. 對稱性
指所有與指令集有關的存儲單元的使用、操作碼的設置等都是對稱的。
11. 均勻性
指對於各種不同的操作數類型、字長、操作種類和數據存儲單元,指令的設置都要同等對待。
12. 面向高級語言(HL)的機器
採用各種對高級語言和編譯程序提供支持的措施,使機器語言和高級語言的語義差距比傳統的馮·諾依曼型機器縮小許多。這種機器統稱爲面向高級語言(HL)的機器。
13. 間接執行型高級語言機器
使高級語言成爲機器的彙編語言。即高級語言和機器語言是一一對應的,這種機器稱爲間接執行型高級語言機器。
14. 直接執行型高級語言機器
高級語言機器本身沒有機器語言,或者說高級語言就作爲機器語言。它可以直接由硬件或固件對高級語言源程序的語句逐條進行解釋並執行。這種機器稱爲直接執行型高級語言機器。
15. 跳轉
當控制指令爲無條件改變控制流時,稱之爲跳轉。
16. 分支
當控制指令是有條件改變控制流時,稱之爲分支。
17. 位置無關
代碼在執行時與它被載入的位置無關。
18. 操作數類型
面向應用、面向軟件系統所處理的各種數據結構。
19. 操作數表示
硬件結構能夠識別、指令系統可以直接調用的那些數據結構。
20. 操作數的類型
主要有:整數(定點)、浮點、十進制、字符、字符串、向量、堆棧等。
21. 變長編碼格式
指令的長度是可變的。
22. 定長編碼格式
將操作類型和尋址方式組合編碼在操作碼中,所有指令的長度是固定唯一的。
23. 混合型編碼格式
通過提供一定類型的指令字長,期望能夠兼顧降低目標代碼長度和降低譯碼複雜度兩個目標。