개인 노트 정리) 프론트엔드 개발자가 알아야하는 CS 지식 - 컴퓨터의 구성요소

2023. 4. 23. 20:56개인노트-인강

프론트엔드 웹 개발의 모든 것 초격차 패키지 Online.

프론트엔드 개발자가 알아야하는 CS 지식

컴퓨터구조

 

# 컴퓨터의 구성요소

 

## 일반적인 하드웨어 구성요소

 

## 중앙 처리 장치(CPU)

- 연산과 제어를 담당한다.

- 일반적인 CPU는 기본적으로 3가지 모듈로 구성되며, 서로 내부 버스로 연결되어 있다.

1. 산술/논리 장치(Arithmetic Logic Unit, ALU)

2. 제어장치(Control Unit) - CPU와 메모리 사이에서의 제어를 도와줍니다.

3. 레지스터(Register) - CPU가 처리하기 위한 데이터 및 명령어에 대한 정보가 임시적으로 저장되는 공간.

## 레지스터 (Register)

- 기본적으로 프로세스는 메인 메모리에 적재된다.

- 실제 연산은 CPU 내부에서 수행되므로, 데이터를 CPU로 가져와 처리해야 한다.

1. 데이터를 일시적으로 CPU 내부에 저장할 공간이 레지스터(register)다.

2. 레지스터는 CPU의 현재 상태(state)를 저장할 공간으로 사용되기도 한다.

## 산술/논리 연산 장치(ALU)

- CPU가 실질적으로 연산을 처리할 수 있도록 한다.

- 산술 연산(+, -, *, / 등) 및 논리 연산(AND, OR, XOR 등)을 수행할 수 있다.

- 컴퓨터 내에서 매우 빠른 연산 장치다.

## 제어 장치(Control Unit)

- 메인 메모리에 적재된 처리해야 할 데이터를 해석하고, 적절한 제어 신호를 생성한다.

- ALU에게 연산 수행을 명령할 수 있다.

- 메인 메모리에 대한 읽기(read) / 쓰기(write) 등의 제어 명령을 내린다.

## 프로그램 수행 절차

- 보조 기억 장치(하드 디스크)에 있는 프로그램이 메인 메모리로 적재된다.

- 메인 메모리로 올라간 프로그램의 코드(code) 영역의 명령어를 읽어 명령을 수행한다.

- 일반적으로 아래의 명령어 수행 사이클(cycle)을 반복하게 된다.

1. 명령어 인출(fetch) : 메인 메모리에서 수행할 명령어를 레지스터로 가져온다.

2. 명령어 해석(decode) : 명령어 정보를 해석한다.

3. 명령어 실행(execute) : 제어 장치가 명령어 수행을 위한 적절한 제어 신호를 보내 실행하도록 한다.