본문 바로가기

CS

[CS] 컴퓨터 구조

목차

  • 컴퓨터 구조의 큰그림
  • 컴퓨터의 네 가지 핵심 부품
  • CPU를 구성하는 핵심적인 세 가지 부품

 

컴퓨터의 구조

컴퓨터가 이해하는 정보

데이터

  • 숫자, 문자, 이미지, 동영상과 같은 정적인 정보
  • 컴퓨터가 주고받는/ 내부에 저장된 정보를 데이터라 통칭하기도 한다.
  • 0과 1로 숫자, 문자를 표현하는 방법

 

명령어

  • 컴퓨터는 결국 명령어를 처리하는 기계
  • 명령어
    • 컴퓨터를 실질적으로 움직이는 정보
    • 데이터는 명령어를 위한 일종의 재료
  • 명령어의 생김새와 동작 방식

 

컴퓨터의 네 가지 핵심 부품

  • CPU
  • 메모리(주 기억 장치) - RAM, ROM
  • 보조기억 장치
  • 입출력 장치

 

CPU

 

메모리에 저장된 명령어를 읽어 들이고 해석하고 실행하는 부품(두뇌 역할)

엄청 복잡하고, 정교하게 설계되어 있음

 

 

CPU를 구성하는 핵심적인 세 가지 부품

  • ALU(산술 논리 연산 장치): 계산기(계산을 위한 회로 모음)
  • 제어장치(컨트롤 유닛): 제어 신호(메모리 읽기, 메모리 저장)라는 전기 신호를 내보내고, 명령어를 해석하는 장치
  • 레지스터: CPU 내부의 작은 저장 장치

 

CPU가 명령어를 어떻게 실행하는지 살펴보자. (1번지에 있는3, 4번지에 있는 값을 더하라는 명령)

  1. 제어장치는 1번지에 저장된 명령어를 읽어 들이기 위해 메모리에 ‘메모리 읽기’ 제어 신호를 보냅니다.
  2. 메모리는 1번지에 저장된 명령어를 CPU에 건네주고, 이 명령어는 레지스터에 저장됩니다.
  3. 제어장치는 읽어 들인 명령어를 해석한 뒤 3번지와 4번지에 저장된 데이터가 필요하다고 판단합니다.
  4. 어장치는 3번지와 4번지에 저장된 데이터를 읽어 들이기 위해 메모리에 ‘메모리 읽기’ 제어 신호를 보냅니다.
  5. 메모리는 3번지와 4번지에 저장된 데이터를 CPU에 건네주고, 이 데이터들은 서로 다른 레지스터에 저장됩니다.
  6. ALU는 읽어 들인 데이터로 연산을 수행합니다.
  7. 계산의 결괏값은 레지스터에 저장됩니다. 계산이 끝났다면 첫 번째 명령어의 실행은 끝납니다.

 

정리

  • CPU는 메모리에 저장된 값을 읽어 들이고, 해석하고, 실행하는 장치다.
  • CPU 내부에는 ALU, 레지스터, 제어장치가 있다.

 

 

메모리(주 기억 장치)

 

현재 실행되고 프로그램을 있는 데이터와 명령어을 저장하는 부품

어떤 프로그램을 실행하기 위해서는 그 프로그램을 이루는 명령어와 데이터가 있어야 한다.

메모리에는 저장된 값에 빠르고 효율적으로 접근하기 위해 주소(address)라는 개념이 사용됩니다.

메모리에는 주소라는 개념이 있기 때문에 내가 접근하고자 하는 데이터, 내가 필요한 명령어들이

어디에 있는지 알 수 있다. (0과 1로 변환되어서 저장)

 

 

단점

실행 중인 프로그램은전부 메모리에 저장되어 있는데 메모리는 전원이 꺼지면 저장내역을 다 잃어버린다.

 

정리

  • 프로그램이 실행되기 위해서는 메모리에 저장되어 있어야 한다.
  • 메모리는 실행되는 프로그램의 명령어와 데이터를 저장한다.
  • 메모리에 저장된 값의 위치는 주소로 알 수 있다.
  • 휘발성 저장장치

 

 

 

보조 기억 장치: USB, SSD, SD카드

현재 실행되고 있지 않는 프로그램들의 명령어와 데이터가 저장되는 곳

전원이 꺼져도 저장할 내용을 계속 보존할 수 있다.

 

메모리는 "실행할 정보"를 저장하고

보조 기억 장치는 "보관할 정보"를 저장한다.

 

 

 

 

입출력 장치: 모니터, 마우스, 프린터, 오디오

컴퓨터 외부에 연결이 돼서 컴퓨터 내부와 정보를 교환할 수 있는 부품

 

보조 기억 장치랑 입출력 장치와 다른 점

  • 개념상 나눠놓긴 했지만 실제로는 컴퓨터와 주고받는 양상을 보면 딲 잘라 구분되는 개념은 아님!
  • "보조기억장치는 메모리를 보조하는 특별한 입출력 장치다!"
  • ex) 외장 하드, 외장 USB

 

 

 

메인보드: 위 4가지를 부착할 수 있는 판때기(한 곳에 모이는 지점)

  • 메인보드에 연결된 부품은 버스를 통해 정보를 주고 받음
  • 버스는 컴퓨터의 부품끼리 정보를 주고받는 일종의 통로
  • 다양한 종류의 버스가 있음
  • 컴퓨터의 핵심 부품을 연결하는 버스는 "시스템버스"

 

 

정리

  • 정보 통로를 버스라고 한다.
  • 버스 중에서도 중요한 버스를 "시스템 버스"라고 한다.

 

 

시스템 버스

시스템 버스의 내부 구성

  • 주소 버스: 주소를 주고받는 통로
  • 데이터 버스: 명령어와 데이터를 주고받는 통로
  • 제어 버스: 제어 신호를 주고받는 통로

 

 

 

그림으로 알아보자!

출차: https://hongong.hanbit.co.kr/%EC%BB%B4%ED%93%A8%ED%84%B0%EC%9D%98-4%EA%B0%80%EC%A7%80-%ED%95%B5%EC%8B%AC-%EB%B6%80%ED%92%88cpu-%EB%A9%94%EB%AA%A8%EB%A6%AC-%EB%B3%B4%EC%A1%B0%EA%B8%B0%EC%96%B5%EC%9E%A5/

 

 

  • 가장 큰 사각형은 메인보드 입니다.
  • 메인보드 안에 시스템 버스(양방향 수직 화살표)가 있습니다.
  • CPU 내부에는 ALU(산술논리연산장치), 제어장치와 여러 레지스터가 있습니다.
  • CPU는 메인보드 내 시스템 버스와 연결되어 있습니다.
  • 메모리는 메인보드 내 시스템 버스와 연결되어 있습니다.
  • 보조기억 장치는 메인보드 내 시스템 버스와 연결되어 있습니다.
  • 모니터, 키보드, 마우스 등은 메인보드 내 시스템 버스와 연결되어 있고, 이들을 입출력 장치라고 부른다.

 

 

 


해당 포스팅에 나온 글과 이미지들은 강민철 저자님의 혼자 공부하는 컴퓨터 구조 + 운영체제의 책과 강의를 참고하여 만들어졌습니다.

책에서 보다 깊게 나오는 내용이 있으므로 한번 구매하고 보셔도 좋을 것 같습니다.

 

[한빛미디어] 혼자 공부하는 컴퓨터 구조+운영체제

좋은 개발자는 컴퓨터를 분석의 대상으로 바라볼 뿐, 두려워하지 않는다!‘전공서가 너무 어려워서 쉽게 배우고 싶을 때’, ‘개발자가 되고 싶은데 뭐부터 봐야 하는지 모를 때’ ‘기술 면접

hongong.hanbit.co.kr

 

'CS' 카테고리의 다른 글

[CS] 메모리, 캐시 메모리  (0) 2024.05.23
[CS] CPU의 성능 향상 기법  (0) 2024.05.22
[CS] CPU의 작동 원리  (0) 2024.05.22
[CS] 명령어  (0) 2024.05.22
[CS] 정보 단위, 인코딩  (1) 2024.05.22