add : 더하기
add a,b,c => a = b+c
t0 - t7 : 임시변수
s0 - s7 : 저장
lw :
- load word
- 레지스터를 로드하고, 메모리 주소에 접근
sw :
- store word
- 레지스터에 저장하고, 메모리 주소에 접근
beq : branch if equal
- 두 레지스터의 값이 같으면 지정된 레이블로 분기
- == 로 생각하면 됨
bne : branch if not equal
- 두 레지스터의 값이 다르면 지정된 레이블로 분기
- != 로 생각하면 됨
sll : 왼쪽으로 shift
- << 기능으로 1001을 10010이런 식으로 이동한다
srl : 오른쪽으로 shift
slt : Set on Less Than
- 비고해서 왼쪽값이 오른쪽 값 보다 작으면 1, 반대는 0
jr : Jump Register
- 지정된 레지스터에 저장된 주소로 프로그램의 실행 흐름을 즉시 이동
jal : Jump And Link
- 프로그램의 특정 위치로 점프(이동)하면서 반환 주소를 기록하는 기능을 수행
ra : Return Address
- 보통 jal (Jump And Link) 명령어를 통해 자동으로 설정
fp : Frame Pointer
- 특정 함수의 스택 프레임 내에서 데이터를 쉽게 참조하고 관리할 수 있도록 도움
gp : Global Pointer
lui : Load Upper Immediate
- 16비트 즉시값(Immediate value)을 레지스터의 상위 16비트에 로드하고, 하위 16비트는 0으로 설정
ori : OR Immediate