Transcript 제2장_컴퓨터개요
컴퓨터과학 개론
제2장 컴퓨터 개요
학습 내용
▶ 컴퓨터란 무엇인가? 하는 주제에 대해 공부한다.
컴퓨터의 정의
컴퓨터의 기능 – 5대 기능 및 5대 장치
컴퓨터의 특징
컴퓨터의 필요성
컴퓨터의 기술적 측면의 세대별 역사
컴퓨터의 형태별 분류 – 사용 목적, 데이터 표현 방식,
처리 용량
-2-
컴퓨터의 정의
컴퓨터(Computer)란 지금까지 사람이 해 왔던 기억
과 계산 등의 일을 빠르고 정확하게 처리해 주는 기계
이며, 사람의 지시에 따라 여러 가지 일을 자동적으로
처리해주는 전자 장치이다.
컴퓨터란 명칭은 원래 “계산을 수행하는 장치”라는
의미를 가지고 있다.
-3-
컴퓨터의 5대 기능 및 5대 장치
입력(Input) 기능
기억(Storage 또는 Memory) 기능
산술 논리 연산(Arithmetic and Logic Operation) 기능
제어(Control) 기능
기억장치
출력(Output) 기능
중앙처리장치
산술연산장치
입력장치
레지스터
제어장치
-4-
출력장치
컴퓨터의 5대 기능 및 5대 장치 (계속)
-5-
컴퓨터의 특징
신속성
자료를 주어진 시간 내에 빠르고 신속하게 처리
정확성
계산시 에러나 오차를 최소화하고 정확하게 계산 및 판단
자동성
입출력을 비롯한 전체 처리 과정을 자동적으로 처리
대량성
대량 데이터의 처리 가능과 대량 데이터의 저장 가능
-6-
컴퓨터의 필요성
과학 기술의 발달과 산업 사회의 급격한 변화로 새
로운 정보를 신속하게 수집, 분석, 활용할 필요성
사회 현상이 복잡하고 다양해짐에 따라 처리할 데
이터 양이 기하급수적으로 증가
위험 부담을 줄일 수 있는 가상 현실이나 모의 실험
의 활용성
편리한 생활을 위해 기계 및 전자 장치들을 제어하
기 위한 컴퓨터의 필요성
-7-
컴퓨터의 역사 – 초창기 계산기
주판(abacus)
기원전 26세기
파스칼의 계산기(1642년)
덧셈과 뺄셈을 수행
라이프니츠의 계산기(1671년)
덧셈, 뺄셈, 곱셈, 나눗셈을 수행
간단한 제곱근도 계산
-8-
근대 계산기
잭쿼드의 천공카드(punched card)
방적기계(1732~1834년)에 적용
컴퓨터에 데이터를 입력하는 주요 수단으로 사용
찰스 바베지
차분엔진(1823년)
해석엔진(1834년)
• 중앙처리장치, 기억장치, 입출력장치 포함
• 프로그램 언어 사용
에이다(Ada): 최초의 프로그래머
홀러리스의 천공 카드 시스템(1889년)
-9-
현대식 컴퓨터 – 0세대
알란 튜링의 튜링기계(Turing machine: 1936년)
이론상의 계산기계로 범용 컴퓨터의 이론적인 시조
기계의 지능 유무를 판단하는 방법을 제안
충분한 기억장소와 처리시간이 주어진다면, 모든 문제를 해결할 수
있는 알고리즘이 주어지는 한, 문제를 일반적으로 처리할 수 있는 도
구로 사용할 수 있음을 증명
기계어가 아닌 프로그래밍 언어의 사용에 대한 기본생각을 제공
프로그램의 내장방식(stored program)의 가능성 제공
이진 코드(binary code)의 사용을 실현케 함
-10-
현대식 컴퓨터 – 0세대 (계속)
아타나조프와 베리의 ABC(1942년)
최초의 전자식 디지털 컴퓨터
연립 방정식 풀이 가능
에이킨의 MARK-I(1944년)
최초의 전기 기계식 계산기
찰스 바베지의 해석엔진 실현 시도
-11-
현대식 컴퓨터 – 0세대 (계속)
모클리와 에커트의 ENIAC(1946년)
최초의 전자식 컴퓨터
전자 가동 장치(진공관) 사용
저장 프로그램 개념(존 폰 노이만 창안: 1945년) 적용
초당 5번의 곱셈을 수행
-12-
현대식 컴퓨터 – 1세대 (계속)
1세대 컴퓨터(1950년대)
기억장치를 이루는 회로 소자로 진공관 사용
주기억장치로 자기 드럼(magnetic drum) 사용
입출력장치에는 천공 카드(punched card) 사용
기계어(machine language)로 프로그램 작성
폰 노이만의 EDVAC(1951년)
• 프로그램 내장 방식을 적용한 컴퓨터
에커트와 모클리의 UNIVAC-I(1951년)
• 과학 분야 외의 다른 분야에서 사용될 목적으로 제작된 최초의 컴퓨터
IBM 701(1952년)
• 진공관식 디지털 컴퓨터
• 1세대 범용 컴퓨터
IBM 650(1953년)
• 사무용 및 과학 기술용 범용 컴퓨터
-13-
현대식 컴퓨터 – 2세대 (계속)
2세대 컴퓨터(1950년대 말~1960년대 초)
회로 소자로 트랜지스터(TR: transistor) 사용
• 신뢰도 향상, 속도 향상
• 작은 크기, 적은 전력 소모, 열 발생 문제 해결 등
주기억장치로 자기 코어(magnetic core) 사용
보조기억장치로 자기 드럼과 자기 디스크(magnetic disk) 사용
고급 프로그래밍 언어의 등장 시기
• 포트란(FORTRAN), 코볼(COBOL), 알골(ALGOL) 등
IBM 7070, 7090 등의 기종이 사용
과학용 및 사무용 컴퓨터의 분리 사용
-14-
현대식 컴퓨터 – 3세대 (계속)
3세대 컴퓨터(1960년대 중반~1960년대 말)
반도체 집적회로(IC, Integrated Circuit) 사용
• IBM system/360(1964년)
• 중앙처리장치의 소형화
다중 프로그래밍(multiprogramming), 실시간 처리 시스템(realtime processing system), 시분할 시스템(time sharing system)
등의 운영 시스템 실현
DEC(Digital Equipment Corporation)의 PDP 8(1965년)
• 최초의 미니 컴퓨터
PDP 11은 대학의 학과용이나 중소 기업 업무 처리용으로 애용됨
많은 프로그래밍 언어 탄생
-15-
현대식 컴퓨터 – 4세대 (계속)
4세대 컴퓨터(1970년대 초~1980년대 말 )
고밀도 집적회로(LSI), 대규모 집적회로(VLSI)의 출현
• 인텔 4004(4비트) : 세계 최초의 마이크로프로세서
• 인텔 8008/8080(8비트), 8088(16비트)
개인용 컴퓨터(PC)의 등장
• MITS사의 알테어 8800(1975년)
최초의 개인용 마이크로 컴퓨터
인텔 8080 마이크로프로세서 장착
• 애플-I(1977년), 애플-II
• IBM PC(1981년)
운영체제(OS)의 발전
• UNIX의 본격적인 등장과 보급 확산
-16-
현대식 컴퓨터 – 5세대 (계속)
5세대 컴퓨터(1990년~현재)
대규모 집적회로(VLSI), 초고밀도 집적회로(ULSI)의 출현
• 인텔 펜티엄 프로세서는 약 300만개의 트랜지스터를 집적
• 향후 약 10억개의 트랜지스터를 집적한 프로세서의 등장 예상
새로운 컴퓨팅 기술의 등장과 적용
• 멀티미디어(Multimedia)의 대중화
• 객체지향언어(OOP) 및 프로그래밍 기술
• 가상현실(VR), 병렬컴퓨팅(Parallel Computing) 기술 등
유무선 정보통신 기술의 발전
• 인터넷(Internet)의 등장과 이용 확산
• 모바일 컴퓨팅(Mobile Computing) 기술의 보급
-17-
현대식 컴퓨터 – 미래의 컴퓨터 (계속)
미래의 컴퓨터 기술
향후 출현할 또는 출현 가능한 형태의 컴퓨터 기술
하드웨어 측면
• 병렬처리(Parallel Processing) 및 로봇공학(Robotics) 기술의 심화
• 착용식(Wearable) 컴퓨터, 광(Optical) 컴퓨터, 양자(Quantum) 컴퓨터,
바이오(Bio) 컴퓨터 등
소프트웨어 측면
• 인공지능(AI), 퍼지(Fuzzy) 이론, 전문가(Expert) 시스템, 음성 인식 기술
의 보편화
• 인공지능 컴퓨터, 신경망(Neuro) 컴퓨터 등
유비쿼터스 컴퓨팅(Ubiquitous Computing)의 보급과 확산
• 컴퓨터가 “도구”에서 “환경”이 되는 새로운 패러다임의 컴퓨팅 기술
• 언제나(Anytime), 어디서나(Anywhere), 임의 장치(Any device)와 임의
의 네트워크(Any network)를 사용하여 원하는 서비스(Any service)를 제
공 받을 수 있는 컴퓨팅 기술 – 5A
-18-
컴퓨터 세대 구분 – 정리 도표
세대
제1세대
제2세대
제3세대
특징
∙구성 소자:진공관
∙기억 장치:수은 지연회로, 자기 드럼, 자기 코아
∙처리 속도:10-3(ms:milli second)
∙응용 분야:과학 계산, 사무 계산
∙입・출력 장치:종이 테이프, 천공 카드
∙사용 기종:ENIAC, UNIVAC, EDVAC
∙기계어 사용
∙구성 소자:트랜지스터
∙기억 장치:자기 코아, 자기 드럼, 자기 디스크
∙처리 속도:10-6(μs:micro second)
∙응용 분야:과학 계산, 사무 통계 관리 업무
∙주요 출력 장치:천공 카드
∙사용 기종:UNIVAC-USSC, USSC II, IBM 7070, IBM 7090
∙고급 언어 등장:FORTRAN, COBOL, ALGOL
∙과학용 컴퓨터와 사무용 컴퓨터 분리 시작
∙구성 소자:집적회로(IC)
∙기억 장치:자기 코아, 자기 박막 자성선
∙처리 속도:10-9(ns:nano second)
∙주요 응용 분야:경영 정보 시스템(MIS:Management Information System)
∙사용 기종:IBM 360, UNIVAC 9000
∙주요 개념:다중 처리(multi-processing)
다중 프로그래밍(multi-programming)
시분할 처리 시스템(TSS:Time Sharing System)
-19-
컴퓨터 세대 구분 – 정리 도표 (계속)
세대
특징
제4세대
∙구성 소자:고밀도 집적회로(LSI), 대규모 집적회로(VLSI)
∙기억 장치:자기 코아, 반도체 메모리
∙처리 속도:10-12(ps:pico second)
∙주요 응용 분야:공장 자동화(FA:Factory Automation)
사무 자동화(OA:Office Automation)
∙주요 특징:개인용 컴퓨터의 대중화
운영 체제(OS:Operating System)의 발전
제5세대
∙구성 소자:대규모 집적회로(VLSI), 초고밀도 집적회로(ULSI)
∙기억 장치:반도체 메모리
∙처리 속도:10-15(fs:femto second)
∙주요 응용 분야:객체지향언어(OOP) 인터넷(Internet)
병렬 컴퓨팅(Parallel Computing)
∙주요 특징:멀티미디어(Multimedia)의 대중화
가상 현실(VR:Virtual Reality)의 대중화
-20-
컴퓨터 사용 단위 요약
단위 기호
의 미
크 기
a
atto
10-18
f
femto
10-15
p
pico
10-12
n
nano
10-9
μ
micro
10-6
m
milli
10-3
K
Kilo
103
210
M
Mega
106
220
G
Giga
109
230
T
Tera
1012
240
P
Peta
1015
250
E
Exa
1018
260
-21-
비 고
` 컴퓨터의 분류 – 사용 목적에 따른 분류
특수용 컴퓨터(special-purpose computer)
특수한 목적에 한해서 사용하기 위해 만들어진 컴퓨터
군사용, 산업용 목적으로 사용
항공 분야, 과학 기술 분야 등에서 사용
범용 컴퓨터(general-purpose computer)
일반적인 업무 처리에서 광범위하게 사용할 수 있도록 만들어진 컴퓨터
IBM 메인프레임(mainframe)
개인용 컴퓨터(personal-purpose computer)
일반적인 PC(Personal Computer)
-22-
컴퓨터의 분류 – 데이터 표현 방식에 따른 분류
디지털 컴퓨터(digital computer)
숫자와 문자 자료 등을 디지털 형태로 처리하는 컴퓨터
일반 사용자가 접하는 대부분의 컴퓨터
아날로그 컴퓨터(analog computer)
온도, 습도, 전압, 전류 등과 같은 연속적인 자료를 물리적인 양 그대로 입
력하여 처리한 후 결과를 그래프와 같은 형태로 출력하는 컴퓨터
하이브리드 컴퓨터(hybrid computer)
디지털 컴퓨터와 아날로그 컴퓨터의 기능을 혼합하여 만든 컴퓨터
-23-
디지털 컴퓨터와 아날로그 컴퓨터의 비교
구분
디지털 컴퓨터
아날로그 컴퓨터
테이터 형식
불연속적인 자료
연속적인 자료
입력 형식
부호, 코드화된 숫자, 문자, 기호
길이, 전압, 전류 등 연속적인 양
출력 형식
숫자, 문자, 부호
곡선, 그래프
정밀도
필요한 한도까지 가능
정밀도 제한(0.01% 까지)
연산 방식
사칙, 논리연산
미적분 연산, 고속
대상 업무
범용
특수용, 미분방정식
회로 구성
논리 회로
증폭 회로, 릴레이
프로그램
필요함
필요 없음
-24-
컴퓨터의 분류 – 처리 용량에 따른 분류
처리 용량(또는 성능)과 규모에 따른 분류
슈퍼 컴퓨터
처
리
성
능
메인 프레임 컴퓨터
미니 컴퓨터
마이크로 컴퓨터
(워크스테이션, PC)
규모
-25-
컴퓨터의 분류 – 처리 용량에 따른 분류 (계속)
슈퍼 컴퓨터(supercomputer)
가장 빠르고 고가인 최첨단의 컴퓨터를 총칭
복잡한 수학적인 계산을 반복적으로 방대한 분량을 처리해야
하는 용도에 적합
수백개에서 수천개의 고성능 마이크로프로세서 사용
10기가 플롭스(giga flops : 초당 10억개 수행) 이상인 컴퓨터
크레이(Cray) 슈퍼 컴퓨터
-26-
컴퓨터의 분류 – 처리 용량에 따른 분류 (계속)
메인프레임 컴퓨터(mainframe computer)
대형(large) 컴퓨터 또는 호스트(host) 컴퓨터
다수의 사용자가 공유하여 이용하는 고속의 컴퓨터
슈퍼 컴퓨터에 비해 성능이나 기억용량이 낮고 가격 저렴
IBM system 360, 370, 4300, 3090, System z 등
-27-
컴퓨터의 분류 – 처리 용량에 따른 분류 (계속)
미니 컴퓨터(minicomputer)
대형 컴퓨터에 비해 저렴한 중소형 컴퓨터
다수의 사용자가 사용할 수 있는 다인용 시스템
PDP-11, VAX 780, AS/400 등
-28-
컴퓨터의 분류 – 처리 용량에 따른 분류 (계속)
워크스테이션(workstation)
개인이나 적은 수의 사람이 특수한 분야에서 사용
일반적으로 UNIX 계열의 운영체제 사용
RISC 마이크로프로세서 칩을 사용하여
고속 연산 가능
IBM RS/6000, SUN 워크스테이션 등
-29-
컴퓨터의 분류 – 처리 용량에 따른 분류 (계속)
마이크로 컴퓨터(micro computer)
개인용 컴퓨터(PC : Personal Computer)
휴대용 컴퓨터(portable computer)
랩탑(laptop) 컴퓨터, 노트북(notebook) 컴퓨터, 팜탑
(palmtop) 컴퓨터, HPC(hand-held PC)
스마트 카드(smart card)
간단한 마이크로프로세서와 작은 메모리
고속도로 통행료나 물품 구매, 계산서 지불 등에 이용
-30-
컴퓨터의 분류 – 요약 도표
기준
사용
목적
데이터
표현
방식
분류
비 고
특수용 컴퓨터
(special-purpose computer)
산업용, 군사용 등의 특수 분야에서 사용
범용 컴퓨터
(general-purpose computer)
기업업무, 금융업무 등의 범용 분야에서 사용
개인용 컴퓨터
(personal-purpose computer)
가정, 학교 등의 개인 용도로 사용
디지털 컴퓨터
(digital computer)
이산적 데이터 처리
아날로그 컴퓨터
(analog computer)
연속적 데이터 처리
하이브리드 컴퓨터
(hybrid computer)
디지털 및 아날로그 컴퓨터의 혼합형
-31-
컴퓨터의 분류 – 요약 도표 (계속)
기준
분류
비 고
슈퍼 컴퓨터
(super computer)
메인프레임 컴퓨터
(mainframe computer)
미니 컴퓨터
(mini computer)
워크스테이션
(workstation)
처리
용량
마이크로 컴퓨터
(micro computer)
Cray, IBM, Fujitsu, Hitachi, NEC 등
IBM, Unisys, Fujitsu, Hitachi, 등
IBM, HP, Fujitsu, NEC 등
CISC(Complex Instruction Set Computer)
RISC(Reduced Instruction Set Computer)-SUN
IBM PC, Apple Macintosh, HP, NEC, Sony 등
랩탑 컴퓨터(laptop computer)
노트북 컴퓨터(notebook computer)
휴대형 컴퓨터
(portable computer)
팜탑 컴퓨터(palmtop computer)
스마트 카드(smart card)
-32-