728x90
반응형
SMALL
함수 프롤로그란 무엇인가?
함수 프롤로그는 함수가 시작할 때 진행되는 과정이다.
예시
다음과 같은 코드가 있다고 가정해보자.
이 코드에서 add 함수가 호출되면, 다음과 같은 일이 일어난다.
1. main 함수에서 add 함수를 호출하기 전에 현재 스택의 위치를 기억해둔다.
2. add 함수에 넘겨준 x와 y 값을 스택에 넣는다. 이때 x는 위에서 두 번째, y는 위에서 첫 번째에 위치하게 된다.
3. add 함수로 점프하기 전에 main 함수의 다음 줄의 주소를 스택에 넣는다. 이때 주소는 가장 위에 위치하게 된다.
4. add 함수에서 새로운 변수 c를 만들고 스택에 넣는다. 이때 c는 가장 아래에 위치하게 된다.
이렇게 스택을 쌓고 add 함수의 내용을 실행한다. 이러한 과정을 함수 프롤로그라고 한다.
728x90
반응형
LIST
'시스템 보안 > 이론' 카테고리의 다른 글
[System] dll 파일이란 무엇인가? (0) | 2023.03.14 |
---|---|
[System] 어셈블리 핸드레이란 무엇인가? (0) | 2023.03.14 |
[System] 컴퓨터의 메모리 구조 (0) | 2023.03.13 |
[System] 어셈블리어란 무엇인가? (0) | 2023.03.13 |
[System] 아키텍처의 종류 (0) | 2023.03.13 |