반응형
1. 캐리플래그(CF)
: 부호없는 수의 산술연산결과가 목적지 오퍼랜드에 저장할 수 없을만큼 큰수를 생성하였는지를 나타낸다.
부호없는 수의 덧셈에서 최상위 비트로부터 자리올림이 있거나 뺄셈에서 최상위 비트로 자리빌림이 있으면
CF는 1이 되고 아니면 0이 된다.
2. 제호플래그(ZF)
: 연산결과가 0이면 1이 되고 연산결과가 0이 아니면 0이 된다.
3. 부호플래그(SF)
: 부호있는 수의 연산결과가 0이거나 양수이면 0이 되고 음수이면 1이 된다.
4. 오버플로그 플래그(OF)
: 부호있는 수의 연산결과가 정상적인 표현범위를 벗어났는지를 나타내기 위해 사용된다. 8비트인 경우
-128 ~ 127, 16비트인 경우 -32768 ~ 32767 을 벗어나면 OF는 1이 되고 아니면 0이 된다.
- MOV나 XCHG 명령어와 같은 데이터 전송명령어는 데이터 전송에 의해 레지스터나 메모리변수의 내용은
바뀌지만 상태플래그는 바뀌지 않는다.
- 부호없는 수의 연산에서 오버플로우 발생은 CF가 1인지를 확인한다.
- 부호있는 수의 연산에서 오버플로우 발생은 OF가 1인지를 확인한다.
'Security' 카테고리의 다른 글
Stack, Prologue, Leave, Ret (0) | 2014.05.13 |
---|---|
각 영역별 정리 (0) | 2014.05.05 |
lpad , conv 를 이용한 BlindSQL Injection (0) | 2014.04.13 |
SQL Injection - Select 필터링(PROCEDURE ANALYSE()) (0) | 2014.04.12 |
BOF 기초 (2) | 2014.04.12 |