제 1 장  컴퓨터의 기초 지식

제 1장 컴퓨터의 기초지식

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

1.1 컴퓨터의 발전과정

1.2 컴퓨터의 종류

1.3 컴퓨터와 인간

1.4 컴퓨터의 기능

1.5 컴퓨터의 구성

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

● 컴퓨터의 발전 과정

1.1 컴퓨터의 발전과정

― 컴퓨터의 어원 : 라틴어의 computare (□계산한다□의 의미)

계산하는 기계

― 네피어(J. Napier):  대수학(logarithm)을 이용한 계산기

― 파스칼(B. Pascal):   가감산이 가능한 계산기

― 라이프니츠(G. W. Leibniz): 곱셈 계산기(덧셈의 반복)

― 배비지(Charles Babbage):

1820년 : 미분기계  (함수표를 자동으로 계산)

1833년 : 해석기계 ∀

기억 장치(store), 연산 장치(mill), 제어 장치(control)

의 3가지 기능)---현재의 디지털 컴퓨터의 기본 원리

그림 1-1.  배비지의 계산기 구조

― 1937년:  미국의 하버드 대학의 에이컨(H. Aiken)

IBM사의 협력을 얻어서 1944 년에 Mark-I 완성

○ 1946년:  에커트(J.P. Eckert)와 모클리(J.W. Mauchly)

ENIAC(Electronic Numerical Integrator And Calculator)

― 입출력 장치 이외는 모두 진공관을 사용( 약 18,800 개)

― 150 kw 의 큰 전력을 필요

― 수치는 10 진법 방식 사용

― 덧셈이 10 진의 2 숫자로 1 초간에 5,400 회,

― 곱셈이 1 초간에 300 회

― 종래의 계산기에 비해 수 1,000 배의 속도

(순수한 전자 제품을 사용하였고 연산 시에 전혀 기계적인 운동이 없었다는 점에서 최초의 디지털 컴퓨터(digital automatic	computer)임)

○  폰 노이만(J. Von Neumann):

― 프로그램 내장 방식(stored program)을 주장

(ENIAC  의 단점을 보완)

□ 컴퓨터는 기억장치를 갖추고 계산의 순서를 10 진수 대신에 2 진수로 부호화하여 기억시킨 후 기억 내용을 순차적으로 꺼내어서 해독하여 그 명령어의 명령대로 실행시켜야 한다□

― 1952년 EDVAC

(Electronic Discrete Variable Automatic Computer) :

수치와 같은 형식으로 표시하여 동일한 기억장치에 축적할 수 있는 프로그램 기억방식을 채용한 진정한 의미의 컴퓨터

1. 프로그램 내장 방식의 선구적 역할

2. 계산기 내부에서 수치를 표시하는데 있어서 2 진법 사용

(현대 디지털 컴퓨터의 모델)

1964년 : IBM-360 시스템 - 범용 컴퓨터

1966년 : 집적 회로(Integrated Circuit :IC)

본격적인 정보화 시대

컴퓨터의 발전 시기를 몇 단계의 세대로 구분

(구분요인: 컴퓨터에 채용된 논리 회로를 기준)

○ 제 1 세대 컴퓨터 (1942 - 1958)

― 진공관을 기본 소자로 하는 시대

― 세대의 기점: 1946년 디지털 컴퓨터인 ENIAC

― 상품화된 컴퓨터 시대가 시작

ENIAC, UNIVAC-1,  IBM 650

― 제 1 세대의 특징

(1) 진공관의 짧은 수명과 발열 때문에

별도의 냉각 장치가 필요

(2) 아주 제한된 특수한 분야에만 컴퓨터가 이용

(3) 주기억 장치는 수은 지연 회로 장치,

자기 드럼 장치

(4) 프로그래밍언어 : 기계어(machine code)

○ 제 2 세대 컴퓨터 (1959 - 1963)

제 2 세대의 기본 소자 : 트랜지스터(transistor)

1948년 바딘(J.Bardeen), 브래틴(H.W.Brattain),

쇼클리(W. Shockley) 등이 개발

1959년:  트랜지스터를 이용한 컴퓨터가 등장

―  트랜지스터 사용으로 빠르고 고장이 적어 신뢰도가 증가

―  부피가 작아지고 전기 소모량이 적어 제작 단가,

유지보수 비용의 부담이 적어짐

―  제 2 세대 컴퓨터의 종류

IBM 7094, CDC 1604

― 제 2 세대의  특징

(1)  주기억 장치에 magnetic core 사용

(2) 보조 기억 장치에 magnetic disk, magnetic drum 등 대형 장치 개발

(3) 기계어 사용의 불편을 덜기 위하여 고급 언어를 개발(COBOL, FORTRAN, ALGOL)

(4) Operating System 개념이 개발되어 컴퓨터 사용이 사용자 중심으로 전환.

(5) Multi- Programming 이 실현

(6) On-Line Real Time System 이 실용화

(7) 컴퓨터 이용 기술인 소프트웨어의 개발에 공헌

○  제 3 세대 컴퓨터 (1965 - 1974)

반도체 소자인 집적회로(IC:integrated circuit) 가 등장

―  컴퓨터 크기는 더욱 소형화

― 소프트웨어에 관한 연구가 활발

― 종합 응용 시대 :  IBM 360/370, UNIVAC 1100, CDC 3000

― 제 3 세대의 특징

(1) 트랜지스터나 다이오드, 저항 등이 칩(chip) 에 집적된    집적회로(IC)를 기억 장치나 회로 소자로 사용

(2) Mini Computer 가 등장

(3) TSS : Time Sharing System 이 실현

(4) 프로그램의 호환성이 실현(family computer)

(5) MIS(management information system)의 체계 확립

○ 제 4 세대 컴퓨터 (1975 - ? )

제 4 세대는 기본 소자로 Large Scale IC(LSI) 를 사용

― 마이크로 컴퓨터(micro computer)가 등장

컴퓨터 기기의 저렴한 가격과 최소의 점유 공간으로 컴퓨터의     응용 범위를 확장

―  1971년 최초의 Micro Processor: 인텔 4040

1973년에 8080, 1975년에 8086

Zilog사  Z-80 을 발표

Motorola 사에서 MC68000을 발표

― PC, 마이크로, 미니, 중·대형 컴퓨터의

성능간의 차이 없어짐

― 제 4 세대의 특징

(1) 마이크로 컴퓨터가 실용화

(2) 컴퓨터 네트워크(network) 개발

(3) Distributed Processing System이 개발

★ 차세대의 컴퓨터에 기대될 수 있는 특징

(1) 최고 수준의 고밀도 집적 회로가 개발

(2) 소프트웨어 개발의 획기적인 기술 방법이 이루어지고 개발의 표준화가 이루어진다.

(3) 컴퓨터 네트워크가 형성되어 전세계, 전국적 또는 지역간 정보 교환의 보편화를 비롯하여, 일정 지역내의 LAN의 활용이 일반화된다.

(4) 컴퓨터가 추론 및 의사 결정을 할 수 있도록 개발된다.

(5) 컴퓨터를 이용한 공장 및 사무 업무의 완전한 자동화가 이루어질 수 있다.

(6) 음성 입출력을 포함한 다양한 감각 기관 기능을 이용한	입출력 컴퓨터가 출현할 것이다.

(7) 인공지능, 신경망, 광 컴퓨터등 새로운 구조의 컴퓨터가	개발될 것이다.(?)

● 컴퓨터의 종류

1.2 컴퓨터의 종류

○ 데이타의 형태에 의한 분류

아날로그 컴퓨터(analog computer)

디지털 컴퓨터(digital computer)

하이브리드 컴퓨터(hybrid computer)

일반적으로 컴퓨터는 디지털 컴퓨터를 의미

○ 아날로그 컴퓨터

― 아날로그는 아날로지(analogy : 唯推)라는 말에서 유래

계산하고자 하는 수치 또는 변수를 길이, 회전각, 전압 등        과 같은 연속적인 물리량으로 상사시키는 관계

― 계산의 정밀도는 이들 물리량을 측정하는 정밀도에 의해	좌      우 되며 계산의 정밀도를 높이기 위한 노력을 필요

― 사용 범위도 제한적( 미분 방정식의 해석이나 자동 제어계의      문제의 해석 등)

○ 디지털 컴퓨터

―  수치를 하나 하나 셈하여 계산

―  문제에 관계되는 정보(데이타)는 숫자의 형식으로 주어지	며, 산술 기타 논리 수학의 규칙에 따라서 처리되므로 과학	기술 계산, 정보의 분석, 판매 관리, 경영상의 판단 자료의	제공 등 사무 처리의 분야에도 광범하게 적용

―  자리 수에 비례하여  계산의 정밀도 높아짐

○ 하이브리드 컴퓨터

― 항공기, 미사일, 인공 위성 등의 고도의 기술 계산용으로	이용되고 있는 컴퓨터

― 아날로그의 장점인 값이 싸고 연산이 빠르다는 특성과 디지	털 컴퓨터의 장점인 정밀도가 높다는 점들을 보완하여 만든	컴퓨터

― 어떤 유형의 데이타도 처리가능

A/D 변환기(analog-digital converter),

D/A 변환기(digital-analog converter)

아날로그 컴퓨터처럼 특수한 용도에 사용

	아날로그 컴퓨터	디지털 컴퓨터
입력형식	연속되는 물리량(전류, 전압,각도)	부호화된 숫자의 문자(이산자료)
출력형식	곡선, 그래프등 연속된 자료형태	숫자, 문자, 부호
정 밀 도	0.01%정도가 한계 일반적으로 0.1% 정도	필요한 만큼 높일 수 있다.
연산형식	덧셈과 적분이 기본	덧셈이 기본
프로그램	거의 불필요	필요하다.
주요 구성회로	중폭회로	논리회로
진행과정	동시에 처리(빠르다)	순서적, 단계적(느리다)
처리대상	미적분 방정식, 시물레이션 등	과학 기술계산, 사무계산
가 격	비교적 低價	비교적 高價
보 수	보수가 비교적 용이	고도의 보수기능이 필요

표. 디지털 컴퓨터와 아날로그 컴퓨터의 비교

○  용도에 의한 분류

― 디지털 컴퓨터의 용도에 의한 분류

(1) 과학 기술용 컴퓨터

(2) 사무용 컴퓨터

(3) 제어용 컴퓨터

○ 규모에 의한 분류

―  기억 용량과 연산 속도 등의 성능과 가격 등

―  초대형(수퍼컴퓨터), 대형(메인프레임), 미니,

마이크로,  PC

― 이 분류는  엄밀한 기준이 있는 것이 아니다.

●  컴퓨터와 인간

1.3 컴퓨터와 인간

○ 인 간

(1)  계산 속도에는 한계가 있다

(2)  계산 과정에서 실수를 하기가 매우 쉽다.

★ 두뇌에 의해 수행되는 두 가지 중요한 기능

― 제어 기능 : 연산에 대한 명령어(예를 들어, +,-,x, )를 해석하고 이러한 명령어들이 올바른 순서로 수행되도록 해주는 기능을 말한다.

― 실행 기능 : 덧셈, 뺄셈, 곱셈, 나눗셈과 같은 특정한 계산을 실제로 수행하는 기능을 말한다. 이 실행 기능에 관해 인간의 두뇌는 오늘날 소형 컴퓨터에 의해 많은 도움을 받을 수 있다.

○  컴퓨터의 구성 요소

― 중앙 처리 장치(CPU : central processing unit)

― 기억장치(memory unit)

― 입출력 장치(I/O device)

―  기억장치는 인간에 의한 계산 과정의 종이에 해당된다. 기	억 장치의 목적은 명령어와 데이타를 저장

―  프로그램 제어 장치(program control unit)는 명령어를	해	석하고 이의 수행 순서를 정한다.

―  산술 논리 연산 장치(ALU : arithmetic and logical unit)는	명령어를 수행한다.

★	ALU 라 부르는 이유:  명령어가 수치 연산 혹은 프로그램	분기(program branching), 기호 처리와 같은 비수치적인 연	산을 포함하고 있기 때문

―  프로그램 제어 장치와 산술 논리 연산 장치가 모여 CPU	를 형성

―  인간과 컴퓨터의 중요한 차이점 :

명령어와 데이타,	즉 정보를 표시하는 방법

◆ 인간은 다양한 범위를 가진 기호로 된 자연어(natural	language)와 10진수를 사용

◆	현대의 컴퓨터에서는 정보가 0 과 1로 표시되는 2 진수 형	태로 되어 저장되고 처리

― 컴퓨터와 인간과의 정보 교환을 이루기 위해서는 컴퓨터의	언어를 인간이 사용하는 언어로 바꾸는 수단과 이의 반대	수단이 필요 :  입출력 장치

그림 1-7. 인간과 컴퓨터에 의한 계산과정의 비교 참조

○ 계산을 위한  요소

(1) 프로그램을 해석하고 수행할 수 있는 프로세서

(2) 프로그램과 데이터를 저장하는 기억 장치

(3) 기억 장치와 처리 장치 사이, 그리고 컴퓨터와 외부와의 사이에 정보를 전달할 수 있는 수단

◎ 컴퓨터의 설계에 본질적으로 앞서서 해결되어야 할 문제

― 합리적인 계산기가 수행할 수 없는 계산이

존재하는지의 여부

― 불가능한 일을 수행하려고 하는 컴퓨터를

만들지 않기 위해 이들을 아는 것도 중요한 의미

◎ 합리적인 컴퓨터가 만족해야 할  두 가지 성질.

(1) 컴퓨터에는 모든 가능한 문제에 대한 답을 저장하지 않	아야 한다.

(2) 컴퓨터는 유한한 시간 내에 정보를 처리할 수 있어야	한다.

컴퓨터의 이론적 모델 : 1936 년에 영국의 수학자

알란 튜링(Alan Turing)

튜링 기계(turing machine)(그림 1-8 참조)

―  튜링 머신의 기억 장소는 정사각형으로 나누어진 무한한          길이의 메모리 테이프 M

각 정사각형은 공백 혹은 유한개의 원소로 된 집합의 기호        들 가운데 하나를 포함

―  프로세서는 유한 상태 기계(finite machine)

―  프로세서에는 헤드가 연결되어 있으며, 헤드의 역할은 테이	프의 한 정사각형에 있는 내용을 읽거나 혹은 한 정사각형	에 주어진 기호를 쓰는 데 있다. 또한 헤드는 현재의 위치       에서 정사각형의 왼쪽 혹은 오른쪽으로 움직일 수 있다.

□□□□□□□□□□□□□□□□□□□

□   프로세서 P    □

□□□□□□□□□□□□□□□□□□□

□□□□□  헤드(head)

□□□□□                 메모리 테이프 M

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□□

그림 1-8. 튜링 기계

1.4 컴퓨터의 기능

● 컴퓨터의 기능

컴퓨터의  특성(고속성, 대량성, 신뢰성, 자동성, 보수 용이성, 호환성)을 살리기 위한  5 가지 기능.

(1) 입력 기능

주어진 데이터와 그 처리 순서인 프로그램을

읽을 수 있는 기능(인간의 귀와 눈의 기능)

(2) 출력 기능

컴퓨터 내부에서 연산 처리한 결과를 종이에 인쇄, 화면을 통한    영상 메시지의 기능(인간의 손이나 입의 기능)

(3) 기억 기능

데이터나 프로그램을 기억 장치에 저장 기능

(인간의 뇌 세포에 해당)

★ 상이한 점

― 인간은 기억한 내용을 영구 보존 불가능

컴퓨터는 영구히 보존

― 인간은 기억량에 한계

컴퓨터는 보조 기억 장치의 활용으로 무한정의 내용 저장

(4) 연산 기능

데이터를 가지고 프로그램에 따라서 연산을 처리, 처리한 데이    터로 원하는 결과를 얻도록 변환하는 기능

(인간의 뇌에서의 사고 기능에 해당)

(5) 제어 기능

지시된 명령의 해석, 각 장치의 기능의  수행을 감독하고  통제   하는 기능 (인간의 뇌의 행동을 제어하고 생각하는 기능에 해당)

★ 컴퓨터의 성능 극대화를 위한  설계 시 고려  사항

1. 장치와 회로 구성(device and circuit)

2. 컴퓨터 구조 (coumputer architecture)

산술 연산이나 논리 연산과 같은 기본적인 연산 기능을 수행하기 위한 알고리즘(algorithm)

3. 컴퓨터 구성 (computer organization)

제어장치, 기억 장치, 입력과 출력 장치와 연산 장치를 연결하는 토폴로지(topology)로 각 장치간의 제어나 데이터의 흐름에 대한 논리적인 관계도 포함될 수 있으며, 이를 위한 버스도 포함된다.

4. 시스템 소프트웨어(system software)

○ 위의 4 가지 고려사항은 컴퓨터 개발 시 가장 중요한 사항이      며, 높은 신뢰도와 프로그램을 처리하는 시간이 적게 걸리는      데 초점이 맞추어지면서 개발

○ 신뢰도와 속도가 증가하여도 컴퓨터 자체의 가격이 고가이면      개발하고자 하는 의도와는 부합되지 않음으로 현재에는 설계      과정의 단축과 다기능 처리를  컴퓨터 설계방향으로 지향

●  컴퓨터의 구성

1.5 컴퓨터의 구성

○ 하드웨어와 소프트웨어

― 소프트웨어 :

하드웨어 장치인 컴퓨터를 보다 효과적으로 이용하기 위한

기술, 즉 컴퓨터의 사용법에 대한 기술

하드웨어의 동작을 지시하고 제어하는 모든 종류의

프로그램을 포함

시스템 소프트웨어: 컴퓨터 시스템이 각종 정보처리 과업을 수행할 때, 그 운영을 제어하고 지원하는 프로그램

응용 소프트웨어: 사용자의 정보처리 요구에 따라 컴퓨터를 특수한 용도나 목적에 사용할 때 그 수행을 지시하는 프로그램들

인간

응용 소프트웨어

컴파일러	로더	유틸리티	라이브러리

운영체제

하드웨어

그림 1-9.  소프트웨어의 계층 구조와 하드웨어

○  하드웨어 장치의 구성

컴퓨터는 제어 장치,  기억 장치,  연산 장치, 입력 장치, 출력 장치의 5 가지 부문으로 구성

그림. 컴퓨터 하드웨어 장치의 구성도