32비트 기준
레지스터
EAX : 산술 연산 및 논리 연산 수행, call 함수 결과 저장
EBX : 메모리 주소 저장
ECX : 반복문 사용 시 반복 카운터로 사용, 반복할 횟수 지정하고 반복 작업 수행
EDX : EAX 레지스터와 같이 쓰임, 부호 확장 명령 등에 사용, 큰 수의 곱셈 또는 나눗셈 연산
EBP : 메모리 스택의 첫 시작 주소 포인터
ESI : 데이터를 조작하거나 복사할 때 데이터의 주소 저장
EDI : 복사할 때 목적지 주소 저장
EIP : 다음에 실행해야 할 명령어의 주소 포인터
플래그
Z : 제로 플래그, 연산 결과가 0일 경우 참(1)
C : 캐리 플래그, 부호 없는 숫자의 연산결과가 비트 범위를 넘을 경우 참(1)
A : 보조 캐리 플래그. 연산 결과 하위 4bit에서 비트 범위를 넘어섰을 경우 참(1)
O : 오버플로우 플래그. 부호 있는 숫자의 연산 결과가 비트 범위를 넘어섰을 경우 참(1)
S : 사인 플래그, 연산 결과가 음수일 경우 참(1)
P : 패리티 플래그, 연산 결과에서 1로 된 비트의 수가 짝수일 경우 참(1)
D : 디렉션 플래그, 문자열 조작에서 참일 경우 주소 주소 레지스터 값이 감소, 거짓일 경우 증가.
T : 트랩 플래그, 참일 경우 한 명령이 실행될 때마다 인터럽트 발생. 디버깅에 사용.