[컴퓨터구조] 유사 명령어 (Pseudoinstruction): li/addi

젠니·2023년 9월 29일
0

컴퓨터구조

목록 보기
8/11

유사 명령어 (Pseudoinstruction)

기계어 명령어는 아닌데 assembly 명령어만 있는 명령어

  • 프로그래머의 편의를 위해 존재한다.

li $10, 1

보통 ori $10, $0, 1 를 사용해서 $10번 레지스터에 1을 저장하는데, 이 의도를 파악하고 따로 만든 instruction이 li instruction이다.

assembler가 로드할 때는 ori로 로드된다.
li $10, 1에 해당하는 의미를 수행하도록 바꿔준 것이다.

addi $t1, $0, 0x7fffffff

.text
.globl main
main:
	addi $t1, $0, 0x7fffffff
    lui $t2, 0x7fff
    ori $t2, $t2, 0xffff

원래 addi는 유사 명령어가 아니다.

하지만 addi의 operand를 16bit보다 큰 값으로 바꿔주면, 이것이 유사 명령어처럼 작동한다.

out-or-range error가 발생한 후, lui와 ori instruction을 사용하여 $t1의 값이 0x7fffffff가 되도록 assemble 해준다.

정리

profile
젠니의 개발 라이푸우

0개의 댓글

관련 채용 정보