방향 플래그
Direction flag이 글은 검증을 위해 인용구가 추가로 필요하다. – · · 책 · · (2018년 12월 (이 템플릿 하는 ) |
방향 플래그는 문자열 처리의 왼쪽에서 오른쪽 또는 오른쪽에서 왼쪽으로 방향을 제어하는 플래그로, 모든 x86 호환 CPU의 Flags 레지스터에 저장된다.[1][2]비트 넘버 10이다.
이 플래그는 메모리의 한 위치에서 다른 위치로 여러 바이트의 데이터가 복사되는 방향('전진' 또는 '후진')을 결정하는 데 사용된다.방향은 주로 메모리의 원래 데이터 위치와 대상 데이터 위치가 겹칠 때 중요하다.
- 0으로 설정된 경우(확정 방향 플래그 명령 사용)
CLD
) — 문자열이 가장 낮은 주소부터 가장 높은 주소까지 처리된다는 것을 의미하며, 이러한 명령 모드를 자동 입력 모드라고 한다.소스 인덱스 및 대상 인덱스 모두(예:MOVS
)는 증가시킨다. - 1로 설정된 경우(설정 방향 플래그 명령 사용)
STD
) — 문자열은 가장 높은 주소에서 가장 낮은 주소로 처리된다.이를 자동감소모드라고 한다.
x86-180 | 의미 | 깃발 | 메모들 | |
---|---|---|---|---|
방향 끈 가공의 | 모드 제목 | |||
CLD | 방향 플래그를 지우다 | 0 | 가장 낮은 주소에서 가장 높은 주소 | 자동 판매 |
STD | 방향 플래그를 설정하다 | 1 | 가장 높은 곳에 있는 주소 | 자동증식 |