指令集與組合語言
下列何者是RISC-V的RV32I(32位元基本整數指令集)所具備的通用整數暫存器?
- A32位元寬的暫存器共32個(x0~x31)
- B32位元寬的暫存器共8個(x0~x7)
- C64位元寬的暫存器共64個(x0~x63)
查看答案與解析
正確答案:A. 32位元寬的暫存器共32個(x0~x31)
RV32I的整數暫存器為x0~x31共32個,寬度為32位元(64位元版的RV64I寬度為64位元,數量同樣是32個)。指令中指定暫存器的欄位為5位元,可表示2的5次方=32個。另有ra、sp、a0等別名,其角色由呼叫慣例(calling convention)規定。嵌入式用途還有減為16個的RV32E。
- A. 正確。x0~x31共32個,x0永遠為0。
- B. 8個接近x86的32位元版通用暫存器的數量。
- C. 即使是64位元版的RV64I,數量也是32個。