스택 포인터

스택: FILO 형태로 데이터를 액세스 하는 데이터 구조.

프로세서의 word 단위로 액세스 된다. 

 

스택포인터

스택포인터는 메모리 영역중 스택의 마지막 값의 위치를 가리키는 레지스터다. 인터럽트나 서브루틴, 함수가 호출될때 - 임시적으로 값을 저장할 필요가 있을때 주로 사용된다. 

출처: 위키피디아

함수가 호출되어 스택 영역에 해당 함수를 실행하기 위한 영역을 할당 할 때, 스택 포인터를 할당할 크기만큼 빼서 스택 영역을 할당한다.

이때 스택 포인터의 값을 빼는 이유는 스택의 첫 주소는 메모리의 높은 주소에 위치 하고 있으며, push할때마다 데이터를 낮은 주소쪽으로 적재 해야 하기에 스택 포인트를 빼는(할당 하는) 것.

'컴퓨터 구조' 카테고리의 다른 글

명령어 addressing  (0) 2023.06.30
함수 호출 작동 방식  (0) 2023.06.28
ISA, ABI, 명령어의 구조  (0) 2023.06.28
MIPS프로세서 명령어의 구조  (0) 2023.06.11
CPU와 성능  (0) 2023.06.07