計算機組成原理複習4(指令系統)

指令格式

指令是指計算機執行某種操作的命令,是計算機運行的最小功能單位。

1.指令的基本格式

指令包括操作碼字段和地址碼字段

操作碼是識別指令,瞭解指令功能與區分操作數地址內容的組成和使用等關鍵信息。

指令長度指所包含的二進制代碼的位數,取決於操作碼的長度,操作數地址碼的長度和操作數地址的個數。

單字長指令:指令長度等於機器字長

  • 零地址指令:只給出操作碼OP,沒有顯地址;如空操作指令,停機指令,關中斷指令;用在堆棧計算機中
  • 一地址指令:只有目的操作數的單操作數指令,按A1地址讀取操作數,進行OP操作後,結果返回源地址;
  • 二地址指令:(A1)OP(A2)——》A1    
  • 三地址指令:(A1)OP(A2)——》A3
  • 四地址指令:(A1)OP(A2)——》A3,A4=下一條將要執行指令的地址

指令尋址方式

  尋址方式是指尋找指令或操作有效地址的方式,也就是指確定本條指令的數據地址,以及下一條將要執行的指令的方法。

1.指令尋址

  • 順序尋址可通過程序計數器PC加1(指令字長),自動形成下一條指令的地址
  • 跳躍尋址通過轉移類指令實現,跳躍是指下條指令的地址碼不是有程序計數器給出,而是由本條指令給出下條指令地址的計算方式。

2.數據尋址

                                                                    操作碼      尋址特徵         形式地址A

1)隱含尋址

    不明顯的給出操作數的地址,在指令中隱含着操作數的地址。如單地址的指令格式,在累加器ACC作爲第二操作數地址。優點是有利於縮短指令字長,缺點是需增加存儲操作數或隱含地址的硬件。

2)立即(數)尋址

     指令的地址字段指出的不是操作數的地址,而是操作數本身,又稱爲立即數。優點是指令在執行階段不訪問主存,指令執行時間短,缺點:A的位數限制了立即數的範圍

3)直接尋址

   指令中的形式地址A就是操作數的真實地址EA;優點:簡單,缺點:A的位數決定了該指令操作數的尋址範圍。

4)間接尋址

   指令中的形式地址A不是操作數的真實地址,而是操作數有效地址所在的存儲單元的地址。地址的地址。

   優點:可擴大尋址範圍,缺點:指令在執行階段要多次訪問

5)寄存器尋址

   在指令字中直接給出操作數所在的寄存器編號

優點:在指令執行期間不訪問主存,只訪問寄存器;缺點:價格貴

6)寄存器間接尋址

   間接尋址是在寄存器R中給出的不是一個操作數,而是操作數所在主存單元的地址,特點是比間接尋址速度快,但是需要訪問主存。

7)相對尋址

   相對地址是把程序計數器PC的內容加上指令格式中的形式地址A而形成操作數的有效地址;優點是操作數的地址不是固定的,隨PC的變化而變化。

8)基址尋址

   指CPU中基址寄存器(BR) 的內容加上指令格式中的形式地址A,形成操作數的有效地址,基址寄存器的內容不變,形式地址可變,面向系統。優點:擴大尋址範圍,有利於多道程序設計;偏移量(形式地址A)的位數較短。

9)變址尋址

   有效地址EA等於指令字中的形式地址A與變址寄存器IX的內容相加之和,(ix)+A,面向用戶,變址寄存器的內容可由用戶改變,形式地址A不變;優點是可擴大尋址範圍(變址寄存器的位數大於A)

10)堆棧尋址

 堆棧是存儲器中一塊特定的按後進先出(LIFO)原則管理的存儲區,該存儲區中被讀寫單元的地址是用一個特定的寄存器給出的,該寄存器稱爲堆棧指針(SP)

 


CISC和RISC的基本概念

 指令系統的發展朝兩種不同方向:一種增強原有指令的功能,設置更爲複雜的新指令實現軟件功能的硬化,這類機器稱爲複雜指令系統計算機(CISC),典型的有采用X86架構的計算機;另一種是減少指令種類和簡化指令功能,提高指令的執行速度這類機器稱爲簡略指令系統計算機(RISC)典型的是ARM,MIPS架構的計算機。

1.複雜指令系統計算機CISC

 特點:

  • 指令系統複雜龐大,指令數目一般爲200條以上
  • 指令的長度不固定,指令格式多,尋址方式多
  • 可以訪存的指令不受限制
  • 各種指令使用頻度相差很大
  • 各種指令執行時間相差很大,大多數指令需多個時鐘週期才能完成。
  • 控制器大多數採用微程序控制
  • 難以用優化編譯生成高效的目標代碼程序

2.精簡指令系統計算機RISC

  • 選取使用頻率最高的一些簡單指令,複雜指令的功能由簡單指令的組合來實現
  • 指令長度固定,指令格式種類少,尋址方式種類少
  • 只有Load/Store(取數/存數)指令訪存,其餘指令的操作都在寄存器之間進行
  • CPU中通用寄存器數量多
  • RISC一定採用指令流水線技術,大部分指令在一個時鐘週期內完成
  • 以硬佈線控制爲主,不用或少用微程序控制
  • 特別重視編譯優化工作,以減少程序執行時間

3.比較

  • RISC更能充分的利用VLSI芯片的面積,CISC的控制器大多采用微程序控制,其控制存儲器在CPU芯片內所佔的面積爲50%以上而RISC控制器採用組合邏輯控制,其硬佈線邏輯只佔CPU芯片面積的10%左右。
  • RISC更能提高運算速度,RISC的指令數,尋址方式和指令格式種類少,又設有多個通用寄存器,採用流水線技術,所以運算速度更快,大多數指令在一個時鐘週期內完成
  • RISC便於設計,可降低成本,提高可靠性。RISC指令系統簡單,機器週期短,邏輯簡單,可靠性高
  • RISC有利於編譯程序代碼優化。RISC指令類型少,尋址方式多,使編譯程序容易選擇更有效地指令和尋址方式,並適當的調整指令順序,使得代碼執行更高效化。

 

 

 

 

 

 

 

 

 

 

 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章