3차시

컴퓨터 하드웨어의 구조와 원리

Part 1. 컴퓨터 일반 · 출제 빈도 ★★★

이 차시를 공부하는 이유

하드웨어는 용어 하나만 정확히 알아도 맞히는 문제가 많습니다. 특히 레지스터, 메모리 종류, 인터럽트는 1급에서 '설명 → 용어 고르기' 형태로 반복 출제됩니다.

2급에서 먼저 보면 좋은 내용

2급의 CPU·기억장치 개념 위에 레지스터별 역할, 인터럽트·DMA·채널, RAID가 더해집니다.

학습 목표

컴퓨터 분류와 자료 구성 단위, 수치·문자 표현 방식을 구분할 수 있다.
CPU를 구성하는 제어장치·연산장치·레지스터의 역할을 설명할 수 있다.
ROM·RAM과 캐시·가상·연관·플래시 메모리의 특징을 비교할 수 있다.
인터럽트, 채널, DMA, 버스, BIOS, RAID의 개념을 이해한다.

핵심 개념

1. 컴퓨터의 분류와 자료 표현
구분디지털 컴퓨터아날로그 컴퓨터
입력 형태숫자·문자 (이산 데이터)전류·온도·속도 (연속 데이터)
출력 형태숫자·문자곡선·그래프
연산사칙 연산미적분 연산
구성 회로논리 회로증폭 회로
정밀도·기억필요한 만큼 / 기억 기능 있음제한적(0.01%까지) / 기억 기능 없음
프로그램필요불필요
  • 자료 단위: 비트 → 니블(4비트) → 바이트(8비트) → 워드 → 필드 → 레코드 → 파일 → 데이터베이스
  • 하프워드 2바이트, 풀워드 4바이트, 더블워드 8바이트 (워드는 CPU가 한 번에 처리하는 명령 단위)
  • 하이브리드 컴퓨터는 디지털과 아날로그의 장점을 결합한 형태로 특수 목적에 쓰입니다.
2. 문자·수치 데이터 표현 코드
코드비트 구성특징
BCD6비트 (Zone 2 + Digit 4)64가지 문자 표현, 영문 소문자 표현 불가
ASCII7비트 (Zone 3 + Digit 4)128가지 문자, 데이터 통신·PC에서 사용, 확장 ASCII는 8비트
EBCDIC8비트 (Zone 4 + Digit 4)256가지 문자, 대형 컴퓨터에서 사용
유니코드16비트 (2바이트)전 세계 문자를 하나의 코드 체계로 표현, 한글 11,172자 모두 표현 가능
  • 해밍 코드: 오류를 검출하고 스스로 교정까지 할 수 있는 코드입니다. 패리티 비트는 오류 검출만 가능합니다.
  • 그레이 코드: 인접한 수 사이에 1비트만 변하므로 A/D 변환기, 입출력 장치 코드에 사용합니다.
  • 수치 표현: 정수는 고정 소수점(부호와 절대치, 1의 보수, 2의 보수), 실수는 부동 소수점(부호·지수부·가수부)으로 표현하며, 부동 소수점은 표현 범위가 넓지만 연산 속도는 느립니다.
시험 함정 포인트
'유니코드는 8비트로 256문자를 표현한다', '패리티 비트는 오류를 교정할 수 있다'는 모두 오답입니다.
3. 중앙처리장치(CPU) 구성

제어장치

명령을 해독하고 각 장치에 제어 신호를 보냅니다. 프로그램 카운터(PC), 명령 레지스터(IR), 명령 해독기(Decoder), 부호기(Encoder), MAR, MBR로 구성됩니다.

연산장치(ALU)

산술·논리 연산을 수행합니다. 가산기, 보수기, 누산기(AC), 데이터 레지스터, 상태 레지스터로 구성됩니다.

레지스터역할
프로그램 카운터(PC)다음에 실행할 명령어의 주소를 기억
명령 레지스터(IR)현재 실행 중인 명령어를 기억
메모리 주소 레지스터(MAR)읽거나 쓸 기억장소의 주소를 기억
메모리 버퍼 레지스터(MBR)기억장치에서 읽거나 쓸 데이터를 임시 기억
누산기(AC)연산 결과를 일시적으로 기억
상태 레지스터연산 결과의 부호·오버플로·자리올림 상태를 기억
  • 레지스터는 CPU 안에 있는 가장 빠른 임시 기억장치이며 플립플롭이나 래치로 구성됩니다.
  • CPU 성능 단위: MIPS(초당 백만 개 명령 처리), FLOPS(초당 부동 소수점 연산 수), 클럭 속도 Hz
  • RISC는 명령어가 적고 단순해 처리 속도가 빠르며 전력 소모가 적습니다. CISC는 명령어가 많고 복잡해 프로그래밍이 쉽지만 속도가 느립니다.
시험 함정 포인트
PC는 '현재' 명령이 아니라 '다음'에 실행할 명령의 주소, IR이 '현재' 명령입니다. 1급 단골 함정입니다.
4. 기억장치: ROM, RAM과 특수 메모리

캐시 메모리

CPU와 주기억장치 사이의 속도 차이를 줄이는 고속 메모리로 SRAM을 사용합니다. 적중률이 높을수록 성능이 좋아집니다.

가상 메모리

보조기억장치(하드디스크)의 일부를 주기억장치처럼 사용해 주기억장치 용량을 확장하는 기법입니다. 속도 향상 목적이 아닙니다.

연관 메모리

주소가 아닌 내용(Content)으로 데이터를 찾는 메모리로 CAM이라고도 합니다. 캐시나 가상 메모리의 매핑 테이블에 사용됩니다.

플래시 메모리

EEPROM의 일종으로 비휘발성이면서 수정이 가능합니다. USB 메모리, SSD, 디지털카메라에 사용됩니다.

구분ROMRAM
휘발성비휘발성 (전원이 꺼져도 유지)휘발성 (전원이 꺼지면 삭제)
용도BIOS, 글꼴, POST 등 펌웨어 저장실행 중인 프로그램과 데이터 저장 (주기억장치)
종류Mask ROM, PROM(1회 기록), EPROM(자외선 삭제), EEPROM(전기로 삭제)DRAM(재충전 필요, 주기억장치), SRAM(재충전 불필요, 캐시)
  • 기억장치 속도: 레지스터 > 캐시 > 주기억장치(RAM) > 보조기억장치 (용량은 반대)
  • 버퍼 메모리는 속도가 다른 두 장치 사이에서 데이터를 임시 보관하며, 캐시도 버퍼의 일종입니다.
  • SSD는 반도체를 이용한 보조기억장치로 HDD보다 빠르고 소음·발열·충격에 강하지만 저장 용량 대비 가격이 비쌉니다.
5. 입출력 제어: 인터럽트·채널·DMA·버스

인터럽트(Interrupt)

프로그램 실행 중 예기치 않은 상황이 생기면 실행을 잠시 중단하고 그 상황을 처리한 뒤 원래 작업으로 돌아오는 것입니다.

채널(Channel)

CPU 대신 입출력을 전담하는 입출력 전용 프로세서입니다. 셀렉터·멀티플렉서·블록 멀티플렉서 채널이 있습니다.

DMA

CPU를 거치지 않고 입출력장치와 메모리가 직접 데이터를 주고받는 방식으로 CPU 부담을 줄입니다.

버스(Bus)

데이터 전송 통로. 내부 버스(CPU 내부)와 외부 버스(주소 버스·데이터 버스·제어 버스), 확장 버스(PCI, AGP, PCIe)로 나뉩니다.

인터럽트 종류원인
외부 인터럽트전원 이상, 기계 착오, 타이머, 입출력 요청, 운영자 조작
내부 인터럽트 (트랩)0으로 나누기, 오버플로, 잘못된 명령어 사용 등 프로그램 오류
소프트웨어 인터럽트 (SVC)프로그램이 운영체제 서비스를 요청 (Supervisor Call)
6. 메인보드 구성과 RAID
RAID방식특징
RAID 0스트라이핑여러 디스크에 나누어 저장해 속도 최고, 오류 복구 불가
RAID 1미러링같은 데이터를 두 디스크에 복사해 안정성 최고, 용량 효율 50%
RAID 5패리티 분산패리티를 여러 디스크에 분산, 한 디스크 장애 시 복구 가능
  • BIOS: 컴퓨터의 기본 입출력 시스템. 부팅 시 하드웨어 검사(POST) 후 운영체제를 불러오며 ROM(플래시 ROM)에 저장되어 펌웨어라고 합니다. CMOS 셋업에서 날짜·시간, 부팅 순서, 암호 등을 설정합니다.
  • 펌웨어: 하드웨어를 제어하는 프로그램을 ROM에 저장한 것으로, 하드웨어 교체 없이 업그레이드로 기능을 개선할 수 있습니다.
  • 포트: USB(최대 127개 장치, 핫 플러그 지원), HDMI(영상+음성 디지털 전송), IrDA(적외선 무선), 블루투스(근거리 무선)
시험 함정 포인트
RAID는 여러 개의 하드디스크를 하나처럼 사용하는 기술로, 목적은 속도 향상과 안정성(데이터 보호)입니다. '디스크 용량을 압축한다'는 틀린 설명입니다.

확인 문제

1 / 5
문제 1
다음 중 CPU 내부의 레지스터에 대한 설명으로 옳은 것은?
①
프로그램 카운터(PC)는 현재 실행 중인 명령어를 기억한다.
②
명령 레지스터(IR)는 다음에 실행할 명령어의 주소를 기억한다.
③
메모리 주소 레지스터(MAR)는 읽거나 쓸 기억장소의 주소를 기억한다.
④
누산기(AC)는 기억장치에서 읽어 온 데이터를 임시로 보관한다.
💡 정답 ③ 해설: PC는 다음에 실행할 명령어의 주소, IR은 현재 실행 중인 명령어, MBR이 기억장치에서 읽은 데이터를 보관하고, 누산기는 연산 결과를 기억합니다.
문제 2
보조기억장치의 일부를 주기억장치처럼 사용하여 주기억장치의 용량이 부족한 문제를 해결하는 메모리 관리 기법은?
①
캐시 메모리
②
연관 메모리
③
가상 메모리
④
버퍼 메모리
💡 정답 ③ 해설: 가상 메모리는 하드디스크 공간을 주기억장치처럼 사용해 용량을 확장합니다. 캐시는 속도 차이 해소, 연관 메모리는 내용으로 검색하는 메모리입니다.
문제 3
다음 중 내부 인터럽트(트랩)가 발생하는 원인으로 옳은 것은?
①
정전이 발생한 경우
②
타이머에 의해 일정 시간이 지난 경우
③
0으로 나누기 연산을 수행한 경우
④
입출력 장치가 데이터 전송을 요청한 경우
💡 정답 ③ 해설: 내부 인터럽트는 0으로 나누기, 오버플로, 잘못된 명령어 등 프로그램 실행 중 오류로 발생합니다. 정전·타이머·입출력 요청은 외부 인터럽트입니다.
문제 4
전 세계의 문자를 16비트(2바이트)로 표현하는 국제 표준 코드는?
①
BCD 코드
②
ASCII 코드
③
EBCDIC 코드
④
유니코드(Unicode)
💡 정답 ④ 해설: 유니코드는 16비트로 전 세계 문자를 표현합니다. BCD는 6비트, ASCII는 7비트, EBCDIC는 8비트입니다.
문제 5
CPU의 간섭 없이 입출력장치와 주기억장치가 직접 데이터를 주고받도록 하는 방식은?
①
DMA
②
인터럽트
③
스풀링
④
버퍼링
💡 정답 ① 해설: DMA(Direct Memory Access)는 CPU를 거치지 않고 입출력장치와 메모리가 직접 데이터를 전송하므로 CPU의 부담이 줄어듭니다.
0/5
훌륭합니다!
모든 문제를 정확히 풀었습니다.

3차시 문제 더 풀기

확인문제와 실전 모의고사에서 이 차시 범위 문제만 모아 해설과 함께 볼 수 있습니다.

주제별 문제 보기
이전 차시
2차시. Windows 설정·시스템 관리
다음 차시
4차시. 소프트웨어·운영체제·언어