오늘은 명언 하나를 시작으로 블로깅을 해보고자 한다.
위대한 것으로 향하기 위해 좋은 것을 포기하는 걸 두려워하지 마라
- 존 록펠러 -
1-1. 컴퓨터의 구조
컴퓨터는 하드웨어와 소프트웨어가 결합된 형태로서, 기본적으로 다음과 같은 장치들로 구성되어 있다 :
- 입력 장치(Input)
- 다양한 물리적인 장치가 존재한다.
- 예시 : 키보드, 마우스, 스캐너, 타블렛 등
- 출력 장치(Ouput)
- 처리된 데이터를 사람이 이해할 수 있는 형태로 출력하는 물리적인 장치
- 예시 : 모니터, 프린터 등
- 중앙처리장치(CPU)
크게 다음으로 구성되어 있다 :
- 산술/논리 연산 장치(ALU) : 말 그대로 덧셈을 수행하는 연산 장치.
- 제어 장치 : 명령과 제어 신호를 생성하여 장치들의 동작을 제어.
- 레지스터 : CPU의 내부 메모리. 데이터를 일시적으로 저장.
- 저장 장치
크게 다음으로 분류된다 :
- 주 기억 장치 :
. 일차 기억 장치.
. 레지스터의 용량이 작으므로 정보를 저장해놨다가 필요할 때 읽어들이는 역할.
. RAM과 ROM으로 구성
- 보조 기억 장치 :
. 주 기억 장치를 보조하는 역할.
. 속도는 느리지만 대용량의 기억이 가능.
. 현재 사용하지 않는 프로그램이 저장.
. 자기 디스크(플로피 디스크, 하드 디스크), 광 디스크(CD, DVD), 플래쉬 메모리(USB, SSD) 등이 이에 해당.
1-2. 중앙처리장치(CPU)
CPU의 구조
- 산술/논리 연산 장치(Arithmetic Logic Unit, ALU)
- 산술 및 논리 연산을 담당하는 장치
- 레지스터에 저장된 데이터를 이용하여 연산을 수행.
- 레지스터
- CPU 내부의 기억장치
- 종류 :
- IR (Instruction Register) : 현재 수행 중에 잇는 명령어 부호를 저장하고 있는 레지스터.
- PC (Program Counter) : 명령이 저장된 메모리의 주소를 가리키는 레지스터.
- AC (Accumulator) : 산술 및 논리 연산의 결과를 임시로 기억하는 레지스터.
- 제어장치(Control Unit, CU)
- CPU 및 주변기기를 제어하는 장치
- 다음으로 구성되어 있다 :
- 프로그램 계수기(program counter) : 프로그램 수행 순서를 제어.
- 명령 레지스터(instruction register) : 명령어의 내용을 임시 기억.
- 명령 해독기(instruction decoder) : 명령을 해독하여 해당 장치에 제어신호를 전송.
- 구현 방식 :
- 고정 배선 제어(Hardwired)
- Micro Program
CPU의 기능
명령어를 기반으로 명령어를 수행하고 처리한다.
- 명령어
- 시스템이 특정 동작을 수행시키는 작은 단위
- 동작코드와 오퍼랜드(실행에 필요한 자료나 실제 자료의 위치) 코드로 구성
- 명령어 수행
- 명령어 처리 과정 :
FI (읽기) -> DI (해석) -> EI (실행) -> WB (기록)
- 명령어 처리
- 명령어 처리 방식 :
- RISC : 컴퓨터 내부적으로 사용하는 명령어 세트를 단순화시켜 처리하는 형태. 단순한 명령을 조합해서 하나의 기능을 수행.
- CISC : 하나의 기능에 해당하는 하나의 명령이 존재.
- 명령어 처리 방식 :
1-3. 메모리 (저장 장치, 기억 장치)
- 저장 장치.
- '휘발성'을 기준으로, 주 기억 장치(메모리)와 보조 기억 장치로 분류 가능 :
- 주 기억 장치 : 시스템이 꺼지면 기억하고 있는 값이 사라짐.
- 보조 기억 장치 : 시스템이 꺼져도 기억하고 있는 값이 휘발되지 않음.
- 레지스터에서 처리하지 못한 것들은 밑으로 내려보내서 하위 메모리들이 처리한다.
성능
- 속도, 즉 'CPU와 데이터를 주고 받는 시간'이 빠를수록 성능이 좋다고 말한다. 이를 액세스라 부르며 단위는 ns(nano-second).
- 리프레시 시간 : 메모리가 재충전하는 시간으로서, 메모리에서 한번 읽고 나서 다시 읽게 되기까지의 사이 시간을 일컫는다.
- 메모리 액세스 시간 : 명령을 받고 데이터를 읽기 시작하기까지의 시간. 즉, CPU에 주소에 해당하는 값을 가져오는데 걸리는 시간.
- 사이클 시간 = 리프레시 시간 + 메모리 액세스 시간
종류
- 주 기억 장치(RAM, ROM)
- RAM(Random Access Memory)
전원이 꺼지면 값이 휘발된다.
램의 크기는 프로그램의 수행 속도에 영향을 준다.
CPU에서 직접 접근이 가능한 유일한 저장 장치이다.
- ROM(Read Only Memory)
읽을 수만 있는 장치
전원이 꺼져도 값이 보존된다.
- 보조 기억 장치(자기 디스크, 광디스크, 플래시 메모리)
- 자기 디스크
플로피 디스크(FDD), 하드 디스크(HDD) 등이 이에 해당.
디스크 드라이브는 자기 디스크로부터 데이터를 읽는 주변 장치를 의미.
- 광 디스크(Optical Disc)
빛의 반사를 이용하여 자료를 읽어내는 저장 매체.
1세대 : CD
2세대 : DVD
3세대 : 블루레이 디스크
- 플래시 메모리
USB, SSD가 이에 해당
비휘발성 메모리
캐시 메모리
- CPU 내 또는 외부에 존재하는 메모리.
- 주 기억 장치와 CPU 사이에 존재하며 데이터 속도 향상을 위한 중간 버터 역할을 한다.
- (빠른 CPU의 처리 속도와 상대적으로 느린 주 기억 장치의 속도차를 극복하는 완충 역할)
- 캐시 메모리는 물리적 장치.
'코딩' 카테고리의 다른 글
컴퓨터 공학 기초 3 (0) | 2022.08.01 |
---|---|
컴퓨터 공학 기초 2 (0) | 2022.08.01 |
[React] 코드 분할(Code spliting) (0) | 2022.07.31 |
[React] Custom Hooks (0) | 2022.07.31 |
React Hooks (0) | 2022.07.28 |