연산에 사용될 데이터, 연산에 사용될 데이터가 저장된 위치를 말함(주소 필드)
ex) mov eax, 0 → 오퍼랜드가 2개인 경우
**pop rbp → 오퍼랜드가 1개인 경우**
**ret → 오퍼랜드가 없는 경우**
연산코드만 있는경우 : 0주소 명령어라 불림
연산코드와 오퍼랜드가 1개있는 경우 : 1주소 명령어라 불림
연산코드와 오퍼랜드가 2개있는 경우 : 2주소 명령어라 불림
연산코드와 오퍼랜드가 3개있는 경우 : 3주소 명령어라 불림
주소 명령어에서 표현할 수 있는 데이터 크기의 한계가 있기 때문임!
오퍼랜드의 크기에 제약을 받지 않고 사용하기 위해서 사용될 데이터가 저장된 위치 주소필드를 이용하는 이유임!
[표현]
16-12[연산코드] : 12-8[10번지] : 8-4[오퍼랜드] : 4-0[오퍼랜드]
→ 원래라면 2^4(16) 밖에 표현이 안됌
→ 주소필드를 이용하면? **2^16(65,536)**를 표현할 수 있음!
유효주소(Effective Address)
명령어 주소 지정 방식(Addressing Modes)
즉시 주소 지정 방식(Immediate Addressing Mode)
직접 주소 지정 방식(Direct Addressing Mode)
간접 주소 지정 방식(Indirect Addressing Mode)
레지스터 주소 지정 방식(Register Addressing Mode)