하드웨어 기초: 메모리와 CPU
1. CPU
0과1로의 계산을 어떻게 어떤 순서로 할지(제어) 결정하는 부분
2. 메모리
CPU가 프로그램을 실행시키기 위해 참조하기 위한 필요한 정보들을 저장해두는 공간
위 그림 설명 :
메모리 상에 "2037" , "37"이라는 데이터를 담는 주소가 각각 900~903 , 2016 이 있다.CPU로 BUS의 역할(control, data, add-address) 을 거쳐 옮겨진다. IP에는 주소값이, Registers에는 실제 값이 들어간다.
포인터와 정수형 변수를 어떻게 저장하는지를 위의 그림을 이용해서 아래와 같이 표현할 수 있다.
위 이미지에 대해 간단한 설명을 붙인다면,
int a, int* p, int** q 가 있고, p = &a, q = *p, **q = 50 이라 할때, 메모리 상에는 위와 같이 변수의 이름과 변수 주소, 변수의 값들이 저장되어있다. 이때, control에서는 Read/Read/Write 가 순서대로 진행되고 data와 add(ress)에서도 그림과 같이 순서대로 진행된다. 한마디로 **q = 50의 50이라는 값이 변수 a에 어떻게 할당되는지를 보여주는 것이다.
'2023 1학기 > 자료구조' 카테고리의 다른 글
[자료구조/c언어] Using Dfs to print Equivalence Relation (0) | 2023.04.04 |
---|---|
[자료구조/c언어] Equivalence Relation (0) | 2023.04.04 |
[자료구조/c언어] naive 알고리즘, DFA 알고리즘 (0) | 2023.04.04 |
[자료구조/c언어] 시간복잡도 (0) | 2023.04.02 |
[자료구조/c언어] 명제와 수학적 귀납법을 재귀함수를 통해서 이해 (0) | 2023.04.02 |