2021-11-07 · 1분
[리버싱] 스택프레임이란..?
스택 프레임Stack Frame이란?
2022-01-13 · 2분
이 글은 작성된 지 2년이 넘었어요. 내용이 오래됐을 수 있어요.

Accumulaotr(누산기 AC)
- 데이터를 일시 정장하는 레지스터이다. 기억장치로부터의 읽어온 데이터와 누산기에 적재되어 있던 데이터가 지정된 연산을 수행한 후 그 결과 값을 다시 누산기에 적재한다. 누산기 내용을 넌부 지워 0으로 만들 수 있으며, 왼쪽이나 오른쪽으로 몇 자리씩 움직일 수도 있다. 누산기의 비트 수는 CPU가 한 번에 처리할 수 있는 데이터 비트 수의 word의 길이와 같다.
데이터 일시저장, AC := AC의 현재값 + 메모리로부터 읽어온 값
Program Counter(프로그램 카운터 PC) : address of next instruction to execute.
- 다음에 수행될 명령어의 주소를 가지고 있는 레지스터. PC 값은 word의 크기에 따라 1 또는 명령어 길이(바이트 수)만큼 씩 증가되어 기억장치에 저장되어 있는 명령어를 연속적으로 수행한다. 그러나 만일 분기 명령어가 실행되는 경우에는 그 목적지 주소로 갱신된다.
다음에 수행될 명령어 주소, 인터럽트, cpu 명령어 처리 순서
Instruction Register(명령어 레지스터 IR)
- 현재 실행 중인 명령어를 기억하고 있는 레지스터
Memory Address Register(기억장치주소 레지스터 MAR) : address of instruction or data.
- 다음에 수행 될 명령어를 인출하기 위해 현재 PC(프로그램 카운터)에 들어있는 내용(주소)이 시스템 주소버스로 출력되기 전에 일시적으로 저장되는 주소레지스터
주소버스, PC -> MAR
Memory Buffer Register(기억장치 버퍼 레지스터 MBR) : contents of a specific memory address.
- 기억장치로 쓰여 질 데이터나 기억장치로부터 읽어온 데이터를 임시로 저장하는 레지스터
(데이터버스), MAR의 실제 콘텐츠 (data, instruction), memory와 cpu의 인터페이스
Status Register(상태 레지스터 PSR) : execution information
- 프로그램이 수행되는 순간마다 프로그램의 수행 상태와 프로세서 상태를 나타냄
Data Register(데이터 레지스터 DR)
- 함수 연산에 필요한 데이터를 저장한다.
Address Register(주소 레지스터 AR)
- 주소나 유효 주소를 계산하는 데 필요한 주소의 일부분을 저장한다.
● 기준 주소 레지스터
● 인덱스 레지스터
● 스택 포인터 레지스터
사용자 가시 레지스터 : DR, AR
사용자 불가시 레지스터 : AC, PC, IR, MAR, MBR
원문: tistory — 2022-01-13 발행, 이 블로그로 이전됨.
…