1. 레지스터
CPU 내부에 위치하는 다목적 공간으로 고속으로 데이터 처리가 가능하다.
현재 처리되고있는 데이터를 저장하는것이 특징.
1)레지스터 구분
범용 레지스터 | EAX | 누산기 | 산술연산에 사용(함수의 결과값 저장) |
EBX | 베이스 레지스터 | 특정 주소 저장(주소 지정 확대) | |
ECX | 카운트 레지스터 | 루프의 반복횟수나 좌우 시프트 횟수 기억 | |
EDX | 데이터 레지스터 | 일반 자료 저장 (입출력 동작에 사용) |
포인터 레지스터 | EBP | 베이스 포인터 | 스택의 첫부분 (?), SS 레지스터와 함께 사용되어 스택내의 변수값을 읽는데 사용함 |
ESP | 스택 포인터 | 스택의 끝부분을 가리킴 | |
EIP | 명령 포인터 | 다음명령어의 Offset(다음 명령의 주소)을 저장하여 다음 수행될 명령의 주소 형성 |
플래그 레지스터 | EFLAGS | 플래그 레지스터 | 연산 결과 및 시스템 상태와 관련된 |
* EIP를 조작하는것이 해킹의 목적, 다음실행명령에 악성코드를 실행하게 몰래 끼워넣는다 던지의 동작이 가능함.
'미분류' 카테고리의 다른 글
170316 어셈블리 언어 (0) | 2017.03.16 |
---|---|
170316 Caller & Callee , 함수 호출 규약 (0) | 2017.03.16 |
170314 리눅스, 우분투 설치 및 C 소양교육 (0) | 2017.03.16 |
170315 C (포인터, 반복문) (0) | 2017.03.16 |
170315 스택(STACK) 자료구조와 프롤로그, 에필로그 (1) | 2017.03.16 |