본문 바로가기
시스템 반도체/컴퓨터 구조 (RISC-V)

컴퓨터 구조 pseudo instructions ( lui, auipc, 가짜 명령어, 의사 코드, RISC-V )

by 전컴반 2022. 2. 27.
반응형

먼저 2가지 명령어를 알아보고 pseudo를 알아보자.

 

 

lui (load upper immediate)

 

간단히 보자, u-type으로 lui t0, 0x12345 하면 t0 레지스터의 왼쪽에 0x12345를 채워 넣고 나머지 bit는 0으로 채워 넣는다. ( 0x12345인 이유는 imm이 20bit이다. )

 

 

 

auipc (add upper immediate to pc)

 

lui와 똑같은 u-type이다. 간단한 동작이다. auipc t0, 0x12345라고 하면 먼저 lui를 하고 pc 레지스터랑 add 한다.

pc = 0x0102_3040이라 한다면 아래와 같다. 0x1234_5000인 이유는 lui를 했기 때문이다.

 

 

pseudo instructions ( 의사 코드 (가짜) 명령어)

 

번역 그래도 가짜 명령어이다. 무슨 말이냐면, 예를 들어 설명하는 것이 가장 좋을 것 같다. 

li s0, 0x1234_5 AAF 하면 s0에 값이 들어간다. 하지만 실제로 동작하는 명령어는 lui와 addi이다. 

 

lui s0, 0x12345

addi s0, 0xAAF 

이 두 동작을 실행하여 li 명령어를 동작시킨다. 이렇듯 pseudo 명령어는 사용자의 편리성을 제공해주기 위해 존재한다.

이렇게 가짜 명령어가 많이 존재한다. 결과는 우리가 원하는 결과지만 동작은 다르게 한다.

 

반응형

댓글