计算机系统抽象层
文章目錄
- 1 計算機系統抽象層
- 2 計算機系統的不同用戶
- 3 指令集體系結構(ISA)
1 計算機系統抽象層
功能轉換:上層是下層的抽象,下層是上層的實現底層為上層提供支撐環境!
我們需要知道程序執行結果不僅取決于算法、程序編寫,而且取決于語言處理系統、操作系統、ISA、微體系結構。
2 計算機系統的不同用戶
計算機系統的不同用戶:
- 最終用戶工作在由應用程序提供的最上面的抽象層。
- 系統管理員工作在由操作系統提供的抽象層。
- 應用程序員工作在由語言處理系統(主要有編譯器和匯編器)的抽象層。
- 語言處理系統建立在操作系統之上。
- 系統程序員(實現系統軟件)工作在ISA層次,必須對ISA非常了解。
- 編譯器和匯編器的目標程序由機器級代碼組成。
- 操作系統通過指令直接對硬件進行編程控制。
- ISA處于軟件和硬件的交界面(接口)。
ISA是對硬件的抽象,所有軟件功能都建立在ISA之上。
3 指令集體系結構(ISA)
ISA指Instruction Set Architecture,即指令集體系結構,有時簡為指令系統。
ISA是一種規約(Specification),它規定了如何使用硬件:
- 可執行的指令的集合,包括指令格式、操作種類以及每種操作對應的操作數的相應規定;
- 指令可以接受的操作數的類型;
- 操作數所能存放的寄存器組的結構,包括每個寄存器的名稱、編號、長度和用途;
- 操作數所能存放的存儲空間的大小和編址方式;
- 操作數在存儲空間存放時按照大端還是小端方式存放;
- 指令獲取操作數的方式,即尋址方式;
- 指令執行過程的控制方式,包括程序計數器(PC)、條件碼定義等。
ISA在通用計算機系統中是必不可少的一個抽象層,Why?
- 沒有它,軟件無法使用計算機硬件!
- 沒有它,一臺計算機不能稱為“通用計算機”
ISA和計算機組成(Organization,即MicroArchitecture,微結構)是何關系?
不同ISA規定的指令集不同,如,IA-32、MIPS、ARM等。計算機組成必須能夠實現ISA規定的功能,如提供GPR、標志、運算電路等,同一種ISA可以有不同的計算機組成,如乘法指令可用ALU或乘法器實現。
ISA是計算機組成的抽象。
參考資料:
總結