(230803) Chap1 컴퓨터 구조 시작
01 컴퓨터 구조 시작
01-1. 컴퓨터 구조를 알아야 하는 이유
문제 해결
문제 상황을 빠르게 진단하고 실마리를 다양하게 찾을 수 있음
‘분석의 대상’으로서 컴퓨터 → 다양한 문제를 스스로 해결할 수 있는 개발자가 되자!
성능, 용량, 비용
사용자가 많은 프로그램은 필연적으로 성능, 용량, 비용을 고려해야 함
문법만으로는 알기 어려운 것들을 고려하여 개발할 수 있다
++ 현업에서는 법적 규제: 개인정보 처리
01-2. 컴퓨터 구조의 큰 그림
컴퓨터가 이해하는 정보?
Computer Architecture
- 컴퓨터가 이해하는 정보
- 데이터 data
- 명령어 instruction (0과 1로 이루어진…)
- 컴퓨터의 네 가지 핵심 부품
- CPU (중앙처리장치)
- 메모리 (주기억장치) - RAM, ROM
- 보조기억장치
- 입출력장치
네 가지 부품
메모리
현재 실행되는 프로그램의 명령어와 데이터를 저장
명령어, 데이터 모두 0과 1로 표현
메모리의 주소 값으로 위치를 알 수 있음
CPU
컴퓨터의 brain
- ALU Arithmetic Logic Unit: 계산기
- register: 임시 저장장치 (레지스터마다 종류와 역할이 있음)
- CU Control Unit: 제어 장치, 제어 신호(부품 관리, 작동, 메모리 read/write) 전송
연산 과정: 명령어 읽기 → 명령어 해석 → 명령어 실행
CPU의 명령어 수행 과정
① 제어장치: 메모리에 저장된 명령어를 읽는 신호 보내기
② 읽은 명령어를 CPU에 전달 → registor에 저장
③ 제어장치: 명령어 해석 후, 필요한 데이터가 있는지 판단
ex 다시 메모리에 <메모리 읽기=""> 제어 신호 보냄메모리>
④ 읽은 데이터를 CPU에 전달
registor는 add
120
100
까지만 저장
ALU에서 연산 후 연산결과 220
저장
⑤ CU: 연산 결과를 메모리에 저장하라는 명령어를 ‘메모리 읽기’로 읽어옴
⑥ 다시 CPU에 전달해서 ‘메모리 저장’을 실행해야 한다고 제어 장치에 전달
⑦ CU: registor에 저장된 결과값과 함께 신호 전달
메모리에 연산 결과 저장
여기서 메모리는?
- 가격이 비싸 저장 용량 적음
- 전원이 꺼지면 내용이 저장되지 않음
실행 중인 프로그램은 메모리에 저장되는데, 이는 전원이 꺼지면 저장된 내용 사라짐
→ 보조기억장치 사용 SSD, USB, DVD, CD-ROM…
GPU는 어디에 속할까요? CPU 연산을 보조하는 거니까 CPU?
입출력 장치
마우스, 키보드, 스피커 등등
주변 장치: 입출력 장치, 보조 기억 장치 (메모리 보조)
메인보드와 시스템 버스
메인보드(=mother board)
- 메인보드: 컴퓨터의 핵심 부품들 연결 내부에 bus가 있어서 정보를 주고받을 수 있음
가장 중요한 버스는 시스템 버스
→ 네 가지 핵심 부품 연결
시스템 버스 내부
- 주소 bus: 주소 주고받음
- 데이터 bus: 명령어, 주소
- 제어 bus: 제어 신호 전달
사실은!
CPU가 메모리를 읽을 때 제어 버스에서 제어 신호와 주소 버스에서 읽고자 하는 메모리의 주소를 동시 보냄