ISA와 어셈블리
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 같은 별칭도 있으며 호출 규약에서 역할이 정해져 있습니다. 임베디드용으로는 16개로 줄인 RV32E도 있습니다.