Ch1. 컴퓨터 구조 시작하기

pingu-venom·2022년 12월 16일
0

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

문제 해결

  • 컴퓨터 구조는 실력 있는 개발자가 되려면 반드시 알아야 기본 지식임
  • 컴퓨터 구조를 이해하고 있다면 문제 상황을 빠르게 진단할 수 있고, 문제 해결의 실마리를 다양하게 찾을 수 있음 (컴퓨터가 더 이상 ‘미지의 대상’이 아닌 ‘분석의 대상’이기 때문)

성능, 용량, 비용

  • 컴퓨터 구조를 이해하면 프로그래밍 문법만으로는 알기 어려운 성능, 용량, 비용을 고려하여 개발하는 능력을 키울 수 있음

1-2. 컴퓨터 구조의 큰 그림

컴퓨터가 이해하는 정보

  • 컴퓨터는 0과 1로 데이터명령어를 표현함
  • 데이터(data)란 컴퓨터가 이해하는 숫자, 문자, 이미지, 동영상과 같은 정적인 정보를 나타냄
  • 명령어(instruction)는 데이터를 움직이고 컴퓨터를 작동시키는 정보를 나타냄

컴퓨터의 4가지 핵심 부품

  1. 중앙처리장치 (CPU; Central Processing Unit)
  2. 주기억장치 (main memroy, 메모리)
  3. 보조기억장치 (secondary storage)
  4. 입출력장치 (input/output(I/O) device)

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

1) 메모리

  • 메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장하는 부품이다
    • 프로그램이 실행되기 위해서는 반드시 메모리에 저장되어 있어야 한다
    • 메모리는 현재 실행되는 프로그램의 명령어와 데이터를 저장한다
    • 메모리에 저장된 값의 위치는 주소(address)로 알 수 있다

2) CPU

  • CPU는 메모리에 저장된 명령어를 읽고, 해석하며, 실행하는 장치이다
  • CPU는 산술논리연산장치(ALU; Arithmetic Logic Unit), 레지스터(register), 제어 장치(CU; Control Unit)로 구성된다
    • ALU는 컴퓨터 내부에서 수행되는 계산을 처리한다
    • 레지스터는 CPU 내부의 작은 임시 저장 장치로, 프로그램 실행에 필요한 값들을 임시로 저장한다
    • 제어장치제어 신호(control signal)라는 전기 신호를 내보내고 명령어를 해석한다
      (메모리 읽기, 메모리 쓰기 등)

3) 보조기억장치

  • 메모리의 치명적인 단점
    1. 가격이 비싸며 저장 용량이 작다
    2. 전원이 꺼지면 저장된 내용을 잃는다
  • 보조기억장치는 메모리보다 크기가 작고 전원이 꺼져도 저장된 내용을 잃지 않는 메모리를 보조하는 저장 장치이다
  • 하드 디스크, SSD, USB 메모리, DVD, CD-ROM과 같은 저장 장치가 대표적임

4) 입출력장치

  • 입출력장치는 마이크, 스피커, 프린터, 마우스, 키보드처럼 컴퓨터 외부에 연결되어 컴퓨터 내부와 정보를 교환하는 장치를 의미한다
  • 보조기억장치는 관점에 따라 입출력장치의 일종으로 볼 수도 있음
    • 보조기억장치와 입출력장치를 ‘컴퓨터 주변에 붙어있는 장치’라는 의미에서 주변장치(peripheral device)라 통칭하기도 함

5) 메인보드와 시스템 버스

  • 지금까지 설명한 컴퓨터의 핵심 부품들은 모두 메인보드(main board)라는 판에 연결됨
    • 메인보드는 마더보드(mother board)라고도 불림
  • 메인보드에 내부의 버스(bus)라는 통로를 통해 메인보드에 연결된 부품들끼리 서로 정보를 주고 받을 수 있음
    • 컴퓨터 내부에는 다양한 종류의 버스가 존재하며, 컴퓨터의 네 가지 핵심 부품을 연결하는 가장 중요한 버스가 시스템 버스(system bus)
  • 시스템 버스는 주소 버스, 데이터 버스, 제어 버스로 구성되어 있음
    • 주소 버스(address bus)는 주소를 주고받는 통로이다
    • 데이터 버스(data bus)는 명령어와 데이터를 주고받는 통로이다
    • 제어 버스(control bus)는 제어 신호를 주고받는 통로이다

0개의 댓글