X86 어셈블리/x86 명령어
보이기
< X86 어셈블리
이 페이지에서는 기본 x86 명령어 집합에서 사용 가능한 다양한 명령어들을 자세히 다룰 것이다. 분량을 줄이기 위하여 명령어들을 그룹 별로 다른 문서에 배치하여 설명하였다.
범례
[+/-]다음 틀은 인자를 필요로 하지 않는 명령어를 표기하기 위해 사용된다:
Instr
다음 틀은 1개의 인자를 갖는 명령어를 표기하기 위해 사용된다:
Instr arg
다음 틀은 2개의 인자를 갖는 명령어를 표기하기 위해 사용된다. 어셈블러에 따라 명령어 포맷이 다름을 주의하라.
Instr src, dest | GAS 문법 |
Instr dest, src | Intel 문법 |
다음 틀은 3개의 인자를 갖는 명령어를 표기하기 위해 사용된다. 어셈블러에 따라 명령어 포맷이 다름을 주의하라.
Instr aux, src, dest | GAS 문법 |
Instr dest, src, aux | Intel 문법 |
접미사
[+/-]특히 유닉스, 리눅스 등과 같은 비윈도 환경에서, 몇몇의 명령어들은 접미사를 붙여 데이터의 크기를 지정해주어야 한다. 가능한 접미사는 다음과 같다:
- b (byte) = 8비트
- w (word) = 16비트
- l (long) = 32비트
- q (quad) = 64비트
32비트 아키텍쳐에서 mov 명령어를 사용하는 예시로, GAS 문법은 다음과 같다:
movl $0x000F, %eax # 값 F를 eax 레지스터에 저장하라.