컴퓨터 시스템 구성 요소
- 하드웨어
컴퓨터 정보들의 전송 통로(BUS)를 제공하고, 그 정보에 대한 처리가 실제 일어나게 해주는 물리적인 실체
- 소프트웨어
정보들이 이동하는 방향과 정보 처리의 종류를 지정해주고, 그러한 동작들을 순서대로 배치하는 명령(command)들의 집합
컴퓨터 하드웨어
CPU (Central Processing Unit)
중앙 처리 장치
기억장치 - 주기억장치 (Ram, Rom), 보조기억장치(디스크)
입출력장치
Ram (Radom Access Memory)
어느 주소든 직접접근 가능, Ram의 크기는 CPU에 의존
코드 영역, 데이터 공용 영역, 상위 메모리(heap), 하위메모리(stack)
Rom (Read Only Memory)
CPU - Register, Decorder, ALU, Shifter
Cache
Ram - GPU (VRAM - Monitor)
I/O
SSD (.exe 실행파일)
고급언어 Z = X + Y
컴파일러를 이용하여 기계어로 번역
어셈블리 언어 LOAD A, X
고급 언어와 기계어 사이의 중간 언어
어셈블러로 번역 시 , 기계어와 1:1 대응
기계어 00100101
2진 비트로 구성
컴파일러
C계열, 한번에 번역해놓고 실행, 동적 요소 적음
인터프리터
한 줄 한 줄 번역하면서 실행, 속도는 느리지만 유연성이 좋음
CPU와 기억장치의 접속
제어 버스 (control bus)
기억장치 읽기/쓰기, 입출력장치 읽기/쓰기, 인터럽트
주소 버스(address bus)
CPU가 메모리로부터 읽을 데이터의 주소나 데이터를 쓸 주소 전달
데이터 버스(data bus)
CPU가 메인 메모리로부터 읽거나 쓸 데이터, 입출력 장치로부터 입력 받거나 출력한 데이터 전달
CPU (Central Processing Unit)
명령어 해독, 산술 논리 연산이나 데이터 처리를 실행하는 장치
ALU가 크다
다양한 명령어 연산이 가능하다
코어 큰게 하나 (코어는 아래 그림에서 DRAM을 제외한 나머지 부분이다 , Control Unit + ALU)
<제어>
IR (Instruction Register) : 현재 수행중인 명령어 일시 저장장치
Decoder : IR의 명령어를 해독한다
CU (Control Unit) : 제어장치, 장치 동작
<연산>
ALU (arithmetic and logical unit) : 산술 / 논리 연산 장치
AC (Accumulator) : 연산 시 사용되는 데이터 일시 저장
<기억>
PC (Program Counter) : 다음 수행 할 명령의 번지, 명령어 실행시 번지 자동 증가
MAR (Memory Address Register) : 현재 수행되는 명령의 주소
MBR (Memory Buffer Register) : 기억장치에 읽고 쓸 데이터
<전달>
BUS : CPU의 각 장치들을 연결하는 통로
GPU (Grapic Processing Unit)
다수 ALU
코어 작은게 여러개
자료형은 float 하나만 있다 (double 은 float 2개, bool 은 1.0000으로 들어감)
명령어 처리 사이클
메인 메모리 -> 명령 인출 -> 명령 해석 -> 레지스터 -> 데이터 획득 -> 명령 실행 -> 메인 메모리
Control Unit ALU
'> CS' 카테고리의 다른 글
[컴퓨터 구조] 캐시 메모리, 주기억장치 (0) | 2023.08.08 |
---|---|
[컴퓨터 구조] 기억 장치 (0) | 2023.07.20 |
[컴퓨터 구조] 병렬 처리, 메모리 공유방식 (0) | 2023.07.12 |
[자료구조] 스택 구현 _ 1차원 배열 (C++) (0) | 2023.07.07 |
[알고리즘] 삽입 정렬(Insertion Sort) 구현 (C++) (0) | 2023.06.08 |