본문 바로가기

혼자 공부하는 컴구, 운체

[1주차] Chapter 01. 컴퓨터 구조, 데이터, 명령어

Chapter 01 컴퓨터 구조 시작하기


01-1 컴퓨터 구조를 알아야 하는 이유

1. 문제 해결의 측면

  문제 상황 분석과 해결을 보다 더 빠르게 할 수 있다. 

더보기

이는 학교에서 프로그래밍 및 실습 과목을 들을 때 많이 느꼈던 부분이다.

자바를 배울 때, 교수님께서 실무에서도 자주 발생하는 일이라고 언급하신 race condition이 발생하는 이유와 원리에 대한 이해가 없으면 과제를 수행할 수가 없었다.

이 외에도 대표적으로 컴퓨터가 어떻게 데이터를 받아들이고 처리하는지, 어떤 순서로 처리를 하는지 알아야 프로그래밍 언어도 배우기 쉽다고 느꼈다. 

2. 성능, 용량, 비용의 측면

 웹사이트, 프로그램 등의 요구사항을 정확하게 알고 개발할 수 있다.

더보기

 아직 구체적인 사항을 요구하는 웹사이트나 프로그램을 개발한 적은 없지만, 학교에서 자료구조나 이산수학을 배우며 개발에서 성능, 용량, 비용이 중요하다는 것을 배웠다.

예를 들자면, 자료구조에서는 다양한 자료를 효율적으로 관리하기 위한 linked list, stack, queue, hashtable 등 자료구조를 배우고, 이산수학은 다양한 문제 해결을 위한 워셜의 알고리즘 등을 배웠다.

이를 통해  내가 생각한 점은 개발은 필요한 기능의 구현도 중요하지만, 데이터와 기능을 효율적으로 다룰 수 있어야 하는 것 같다.


확인 문제

1. ②

2. ① 미지의 대상, ② 분석의 대상 

 


01-2 컴퓨터 구조의 큰 그림

1. 컴퓨터가 이해하는 정보 

데이터 : 정적인 정보이자 명령어를 위해 존재하는 일종의 재료

 ex) 숫자, 문자, 이미지, 동영상 등

 

명령어 : 데이터를 움직이고 컴퓨터를 작동시키는 정보

 

2. 컴퓨터의 4가지 핵심 부품

중앙처리장치(CPU: Central Processing Unit) 메인보드 내 시스템 버스와 연결되어 있다.

 -컴퓨터의 두뇌, 메모리에 저장된 명령어를 읽어 들이고, 해석하고 실행하는 부품이다.

 -내부에 ALU(산술논리연산장치), 제어장치, 레지스터가 있다. 

ALU(산술논리연산장치) 계산기, 컴퓨터 내부의 대부분의 계산을 도맡아 수행한다.
제어장치 제어 신호라는 전기 신호를 내보내고 명령어를 해석하는 장치,
메모리 읽기메모리 쓰기라는 제어 신호를 보낸다.
레지스터 임시 저장 장치, 프로그램 실행시 필요한 값들을 임시로 저장한다.
CPU 내에 각자 다른 이름과 역할을 가진 여러 개의 레지스터가 존재한다.

 

주기억장치(main memory; 메모리메인보드 내 시스템버스와 연결되어 있다.

 크게 RAM(Random Access Memory)와 ROM(Read Only Memory) 두 가지가 존재하나, 보통 RAM을 지칭

 -프로그램이 실행되려면 반드시 메모리에 저장되어 있어야한다.

 -현재 실행되는 프로그램의 명령어와 데이터를 저장한다.

 -저장된 명령어와 데이터의 위치를 나타내기 위하여 주소(address)라는 개념을 사용한다.

 -주기억 장치의 두 가지 치명적인 약점

  : 가격이 비싸 저장 용량이 적다.

  : 전원이 꺼지면 저장된 내용을 잃는다.

 

보조기억장치(secondary storage) 메인보드 내 시스템버스와 연결되어 있다.

  -메모리의 약점을 보완하여 저장용량이 크고, 전원이 꺼져도 저장된 내용을 잃지 않는 저장 장치

ex) 하드 디스크, SSD, USB, DVD, CD-ROM 등 

 

입출력장치(input/output(I/O) device) 메인보드 내 시스템버스와 연결되어 있다.

 -컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환하는 장치

 ex) 마이크, 스피커, 프린터, 마우스, 키보드 등

 -하드 디스크, USB, CD-ROM 도 일종의 입출력 장치로 볼 수 있다. 보조기억장치와 입출력장치를 '주변장치'라 통칭하기도 한다.


(컴퓨터의 부품)

메인보드(mother board, 마더보드)

 -위의 4가지 부품을 포함하여 여러 부품을 부착할 수 있는 슬롯과 연결단자가 있다.

 -버스(bus) : 연결되어 있는 부품끼리 서로 정보를 주고받을 수 있는 통로

 

시스템버스(system bus) 메인보드 내에 위치한다.

 -컴퓨터의 네 가지 핵심 부품을 연결하는 가장 중요한 버스

 -주소 버스, 데이터 버스, 제어 버스의 3개의 버스로 구성되어 있다.

주소 버스(address bus) 주소를 주고받는다.
데이터 버스(data bus) 명령어와 데이터를 주고받는다.
제어 버스(control bus) 제어 신호를 주고받는다.
CPU의 제어장치가 이 버스를 통해 제어 신호를 내보낸다.

확인문제

1. ① 데이터, ② 명령어

2. ③

(기본미션)3. 메모리

4. ①-ㄴ, ②-ㄱ

5. ①