반응형
레지스터는 cpu 내부에 존재하는 작은 고속의 메모리라고 할 수 있다고 한다.
레지스터 종류로는 범용 레지스터, 세그먼트 레지스터, 상태 플래그 레지스터, 명령 포인터 레지스터 등이 있다.
범용 레지스터
EAX (Extended Accumulator Register)
-> 곱셈과 나눗셈 명령에서 자동으로 사용되고 함수의 리턴값이 저장되는 용도
EBX (Extended Base Register)
->ESI나 EDI와 결합하여 인덱스에 사용
ECX (Extended Count Register)
-> 반복 명령어 사용시 카운터로 사용, ECX레지스터에 반복할 횟수를 지정해 놓고 반복 작업 수행
EDX (Extended Data Register)
-> EAX와 같이 사용되고 부호 확장 명령 등에 쓰임
ESI (Extended Source Index)
->데이터 복사시 Source Data주소(복사할곳을 말한다.)
EDI (Extended Destination Index)
-> 복사 작업시 목적지 주소가 저장.
ESP (Extended Stack Pointer)
->하나의 스택 프레임의 끝 지점 주소가 저장.(PUSH, POP에 따라 위치가 4바이트씩 변함)
EBP (Extended Base Point)
->하나의 스택 프레임의 시작 지점 주소가 저장. 현재 사용되는 스택 프레임이 소멸되지 않는 동안 EBP값은 변하지
않는다.
EAX (Extended Accumulator Register)
-> 곱셈과 나눗셈 명령에서 자동으로 사용되고 함수의 리턴값이 저장되는 용도
EBX (Extended Base Register)
->ESI나 EDI와 결합하여 인덱스에 사용
ECX (Extended Count Register)
-> 반복 명령어 사용시 카운터로 사용, ECX레지스터에 반복할 횟수를 지정해 놓고 반복 작업 수행
EDX (Extended Data Register)
-> EAX와 같이 사용되고 부호 확장 명령 등에 쓰임
ESI (Extended Source Index)
->데이터 복사시 Source Data주소(복사할곳을 말한다.)
EDI (Extended Destination Index)
-> 복사 작업시 목적지 주소가 저장.
ESP (Extended Stack Pointer)
->하나의 스택 프레임의 끝 지점 주소가 저장.(PUSH, POP에 따라 위치가 4바이트씩 변함)
EBP (Extended Base Point)
->하나의 스택 프레임의 시작 지점 주소가 저장. 현재 사용되는 스택 프레임이 소멸되지 않는 동안 EBP값은 변하지
않는다.
명령 포인터
EIP(Extended Instruction Pointer)
-> 다음에 명령어가 위치를 나타냄. 현재 명령어를 실행 후 EIP 레지스터에 저장되는 주소에 있는걸 수행
세그먼트 레지스터
CS(Code Segment)
->실행 가능한 명령어가 존재하는 세그먼트의 오프셋이 저장된다.
DS(Data Segment)
->프로그램에서 사용되는 데이터가 존재하는 세그먼트의 오프셋 저장
SS(Stack Segment)
-> 스택이 존재하는 세그먼트의 오프셋이 저장
->실행 가능한 명령어가 존재하는 세그먼트의 오프셋이 저장된다.
DS(Data Segment)
->프로그램에서 사용되는 데이터가 존재하는 세그먼트의 오프셋 저장
SS(Stack Segment)
-> 스택이 존재하는 세그먼트의 오프셋이 저장
플래그 레지스터
CF(Carry Flag)
-> 부호 없는 연산 결과가 용량보다 클 때 1로 셋팅
ZF(Zero Flag)
->연산 결과가 0일때 1로 셋팅
OF(Overflow Flag)
->부호 있는 연산 결과가 용랴옵다 클 때 1로 셋팅
SF(Sign Flag)
->연산 결과가 음수가 되었을 때 1로 셋팅
DF(Direction Flag)
->문자열 처리에서 연속되는 문자열의 처리 방향에 따라 세트됨
CF(Carry Flag)
-> 부호 없는 연산 결과가 용량보다 클 때 1로 셋팅
ZF(Zero Flag)
->연산 결과가 0일때 1로 셋팅
OF(Overflow Flag)
->부호 있는 연산 결과가 용랴옵다 클 때 1로 셋팅
SF(Sign Flag)
->연산 결과가 음수가 되었을 때 1로 셋팅
DF(Direction Flag)
->문자열 처리에서 연속되는 문자열의 처리 방향에 따라 세트됨
반응형
댓글