指令集與組合語言

下列何者最適合作為指令採用固定長度的優點?

  1. A指令的分界一目了然,容易同時解碼多個指令
  2. B每個指令都比可變長度短,所以程式必定變小
  3. C指令的種類可以無限增加
查看答案與解析

正確答案:A. 指令的分界一目了然,容易同時解碼多個指令

若為固定長度,第n個指令從第4n位元組開始便已確定,因此可一次取出多個指令並行解碼。這對於每個週期發出多個指令的超純量(superscalar)CPU特別有利。另一方面,因為無法將常用的指令表示得較短,程式碼大小往往比可變長度更大。RISC-V的C擴充藉由加入16位元的指令來彌補這個弱點。

  • A. 正確。解碼電路會變得簡單。
  • B. 能把常用指令縮短的可變長度,程式碼反而容易變小。
  • C. 由於是在固定的位元數內表示,種類有其限制。
練習這個領域 前往領域頁面

指令集與組合語言的其他題目

  1. 在RISC-V的指令中,指定暫存器的欄位(rd、rs1、rs2)各為5位元。下列何者是其理由?
  2. RISC-V的addi指令的立即值是12位元帶正負號的整數。下列何者是此立即值能表示的範圍?
  3. 在RISC-V中,要將無法收進12位元立即值的32位元常數(例:0x12345678)放入暫存器,一般的方法是下列何者?
  4. 在RISC-V中以lui與addi兩個指令產生常數0x12345FFF時,正確的組合是下列何者?
  5. 下列何者是RISC-V的auipc指令(add upper immediate to PC)的動作?