ch0-warming-up-material 2013.ppt [호환...

57
1 컴퓨터 기초 (1/4) Warming Up! Computer Fundamentals Computer History Algorithm and Programming Internet & WWW Curriculum: Teacher College, Computer Education

Upload: dotram

Post on 19-Apr-2018

233 views

Category:

Documents


6 download

TRANSCRIPT

1

컴퓨터기초 (1/4)

Warming Up!

Computer Fundamentals

Computer History

Algorithm and Programming

Internet & WWW

Curriculum: Teacher College, Computer Education

History of computer

초기의계산도구

주판

최초로 사용된 계산 도구로, 유래는 기원전 3000년 경 고대 메소포타미아인들이 사용했다고 한다.

파스칼의 계산기

1642년, 파스칼, 기어와 레버를 조작해서 덧셈과뺄셈을 하는 기계적 계산기

라이프니츠의 계산기

1694년, 라이프니츠, 덧셈, 뺄셈만이 아니라 곱셈과 나눗셈도 가능한 계산기

[그림] 라이프니츠의 계산기

[그림] 파스칼의 계산기

3

해석기관(컴퓨터의 등장을 예측)1833년, 연산장치, 기억장치, 제어장치, 입출력장치 등 현재 컴퓨터의 모든개념을 포함하고 있는 기계(논리적 설계), 자금의 부족으로 개발에는 실패

펀치 카드 시스템

1889년, 홀러리스, 데이터를 종이 카드에 구멍을 뚫어 표현하는 시스템, 1890년 미국 인구 조사에 사용

튜링 기계

1936년, 튜링, 현대 컴퓨터가 동작하는원리가 되는 추상적인 기계

[그림] 펀치 카드 시스템

History of computer

• 논문: 계산 가능한 수에 대해, 수리명제 자동생성 문제에 응용하면서”(On Computable Numbers, with an Applicationto the Entscheidungsproblem)

[그림] 튜링기계

4

History of computerA.D. 1944~ : period of the electronic computer

ENIAC (1946 ,

Mauchly and Eckert)

The first electronic computer

electronic Numerical Integrator and Calculator

EDSAC (1949 , Cambridge Univ.)

The first program built-in computerhas its own memory..

EDVAC (1950 , Pennsylvania Univ.)

The first commercial computer

Completion of modern computer foundation

5

History of computer

Smaller! Faster! Cheaper!

The I’st generation computer (1951-1958) Vaccum Tubes

The 2’nd generation computer (1959-1964) Transistors

The 3’rd generation computer (1965-1970) Integrated circuits

The 4’th generation computer (1971- current) Microprocessors

The 5’th generation computer (future) Artificial Intelligence

Development of computer – progress of performance, cost,size

6

History of computer

The 1’st generation (1950-1958)Vacuum tube : very big size and so much heatstorage : magnetic coreData form : punched card Binary scale usedExample : UNIVAC1(1951) - the first business application electronic computer

Vacuum tube Magnetic core UNIVAC

Development of computer – progress of performance, cost,size

7

History of computer

The 2’nd generation (1959-1964)transistor : 200-times small than vacuum tube , faster, more reliablestorage : magnetic core, magnetic disk , magnetic tapeModular design of hardwareOS concept proposedHigh-level programming language appeared : FORTRAN , COBOL

transistor Transistor computer TX - 0Magnetic disk

Development of computer – progress of performance, cost,size

8

History of computer

The 3’rd generation (1965-1970)Integrated circuit(IC) : complete electronic circuit on a small chip of siliconTime sharing technique appeared: many users use the same computer simultaneouslyData communication appearedSoftware organization established :

집적회로

집적회로

IBM 360

Development of computer – progress of performance, cost,size

IC

9

History of computer

The 4’th generation (1971-current)Extension of 3’rd generation technology Using LSI ,VLSIMicro processor appearedPersonal computer(PC) spread vastly – computer popularization Computer network and Internet spreadVirtual memory concept proposedDatabase appeared

<micro processor>

Development of computer – progress of performance, cost, size

10

History of computer

Example of 4’th generation computer

<1980 early PC>mini computer

<super computer> <current desk-top> <current notebook><multimedia computer>

Development of computer – progress of performance, cost,size

11

History of computer

The 5’th generation (onward)

Intelligent computer Expert systemNatural language

Development of computer – progress of performance, cost,size

12

Five basic components of a computer system

[그림] 컴퓨터의 역할

[표] 컴퓨터의 기능

13

Computer architectureDecomposing computer (1/2)

Input device

Output device

Input deviceOutput deviceProcessing deviceStorage device

Computer architectureDecomposing computer (2/2)

Processing device

Storage device

Mother board

Input deviceOutput devicestorage deviceprocessing device

14

15

CPU (Central Processing Unit)

: control center of computer

Composition of CPUArithmetic/logic unit (ALU)

- operation/calculationControl unit (CU)

- data flow control

16

History of CPU

integrity higher, clock velocity higher, data unit longer!

classical CPU (1968-1975) : 4bit 4004, 8bit 8008 1’st generation CPU : 8086(1978), 8088(1979)2’nd generation CPU : i80286(1982)3’rd generation CPU : i80386(1985)4’th generation CPU : i80486(1989)5’th generation CPU : pentium(1992) , pentium MMX(1997)6’th generation CPU : pentiumⅡ (1997), celeron (1998 ~),

pentium3 (1998 ~), XEON7’th generation CPU : pentium 4 (2000~), Itanium IA-64 (2004~)8’th generation CPU : pentium D, Core 2 Duo, 코어2쿼드,

린필드(i5), 볼룸필드(core i7)

17

History of CPU

286 CPU386 CPU group

486 CPU pentium

Pentium II Pentium 3

celeron Itanium IA-64

18

Well-Known Computers

IBM System 360/50 DEC VAX 11/780 Apple iMac Pentium4

0.15 MIPS

64 KB$1M

$6.6M per MIPS$16M per MB

1 MIPS(reported)0.5 MIPS(actual)

1 MB$200K

$200K to $400 per MIPS$200K per MB

700 MIPS(peak)427 MIPS(estimated)

32 MB$1229(September 1998)

$1.75 to $2.90 per MIPS$38 per MB

12600 MIPS(peak)4697 MIPS(estimated)

256 MB$1529

$0.12 to $0.33 per MIPS$5.97 per MB

1965 1977 1998 2003

19

Transistors Per Die Trends

Source: www.icknowledge.com# 무어의 법칙 : 마이크로칩 기술의 발전속도에 관한 것으로 마이크로칩에저장할 수 있는 데이터의 양이 18개월마다 2배씩 증가한다는 법칙.

20

Hard-Disk Technology Trends

Source: IBM HDD Evolution by Ed Grochowski at Almaden

Disk density: 1.50x - 1.60x per year (4x in three years)

21

Warming Up!

Computer Fundamentals

Computer History

Algorithm and Programming

Internet & WWW

Curriculum: School of Computer Science and Engineering

컴퓨터기초 (2/4)

22

알고리즘 (Algorithm)컴퓨터를이용한문제해결과정

문제정의와분석

알고리즘고안

프로그램작성

알고리즘: 문제해결방법에대한단계별풀이과정

프로그램: 알고리즘을컴퓨터가이해할수있는언어로코딩한것

알고리즘작성 코딩

23

알고리즘의 중요성

100만명을대상으로각자가낸납세액이전체납세액에서차지하는비율을구하는문제

24

알고리즘 1

1. 100만명의납세액을입력받는다. (1초)

2. 100만면중첫번째대상자의납세액을읽어온다. (1/100만초)

3. 100만명의납세액총액을구한다.100만 * 1/100만초+(100만 - 1)*1/100만초 = 2 - 1/100만초

4. 2의값을총합으로나누어납세비중을구한다. (1/100만초)

5.아직남은대상자가있으면 2~4의과정을반복한다.

총소요시간 : 1+ (2 + 1/100만) * 100만 = 약 200만 2초= 555시간

25

알고리즘 2

1. 100만명의납세액을입력받는다. (1초)

2. 100만명의납세액총액을구한다.100만 * 1/100만초+(100만 - 1)*1/100만초=2 - 1/100만초

3. 100만명중첫번째대상자의납세액을읽어온다. (1/100만초)

4. 3의값을 2에서계산한값으로나누어납세비중을구한다. (1/100만초)

5.아직남은대상자가있으면 3~4의과정을반복한다.

총소요시간 : 1+ 2 – 1/100만 + (1/100만+1/100만)* 100만= 약 5초

26

프로그래밍 언어

기계어machine language컴퓨터가 직접 이해 가능한 언어

0과1의 조합으로 표현사람이 이해하기는 복잡하고 어려움

00011010 0001 0010

어셈블리어assembly language0과1의 조합을 상징적인 코드로 변환하여 인간의 이해도를 향상컴퓨터에서 실행되려면 결국 기계어로 변환되어야 함

어셈블러(Assembler)라는 소프트웨어필요ADD 1, 2

고급언어high-level programming language인간이 이해하기 쉽게 만든 컴퓨터용 언어

역시, 기계어로 변환시켜 주는 소프트웨어가 필요 (컴파일러)예) FORTRAN, COBOL, PASCAL, BASIC, C, C++, Java...

27

프로그램 언어의 역사

구조적프로그래밍 기법 (1970년 ~~ 1980년대 중반 이전)프로시져, 함수 등의 사용으로 70년대 대표적 구조적 프로그래밍기법ALGOL계열(PASCAL, C 등) 언어들이 대표적

객체지향 프로그래밍 기법 (1980년대 중반 이후)객체간의 상호연동을 프로그래밍으로 표현

Smalltalk(‘83)의 등장으로 비로소 객체지향 프로그래밍 언어시대 개막추상화, 캡슐화, 다형성, 동적 바인딩 등이 대표적 개념C++, Java

** 절차(procedural, 함수 function) 중심적인 사고 객체(object)중심적인 사고

28

프로그램 언어의 역사C++가장 대중적 언어인 C와 객체지향 패러다임의 만남C with classes C++사실상 C++는 순수한 의미에서의 객체지향 언어는 아니다. 러나 가장 대중적으로 성공한 객체지향 언어임에는 틀림없다.

Java선 마이크로시스템사에서 개발한 프로그래밍 언어

간단하고 버그가 없는 전자제품 개발이 초기의 목적

플랫폼 독립적이면서 분산 네트워크 지원필요

1994년 중반부터 웹의 인기 상승으로 브라우저 개발현재는 Netscape과 Explore 모두에서 자바를 지원웹상에서 에니메이션이나 고수준의 상호작용이 가능

프로그래밍 언어로서의 자바

단순, 객체지향적, 분산처리, 컴퓨터 구조에 중립적 등등

29

컴파일 (Compile)

컴파일고급 언어로 작성한 프로그램을 컴퓨터가 이해할 수있고, 실행 가능한 기계어로 번역하는 과정

컴파일러번역을 담당하는 프로그램

컴퓨터 기종, 운영 체제, 프로그래밍 언어에 따라 다른종류의 컴파일러 필요

30

컴파일 과정과 라이브러리

원시 파일(Source Code)

*.cpp

목적 파일(Object Code)

*.obj

컴파일 작업(컴파일러,Compiler)

라이브러리(Library)

실행 프로그램(Executable Code)

*.exe

링크 작업(링커, Linker)

라이브러리 : 입출력과같이프로그래밍에서공통으로많이쓰이는작업들을미리컴파일하여목적파일형태로만들어놓은것들의집합

31

프로그램 에러와 디버깅

에러종류문법적 에러 (Grammatical Error)프로그램이 언어의 문법에 어긋나는 경우 발생

컴파일러가 컴파일 시 에러 정보 출력

논리적 에러 (Logical Error)프로그래머가 알고리즘을 잘못 만들었을 경우 발생

컴파일러가 검사할 수 없음, 실행 시 오동작버그 : 논리적인 에러디버깅 : 버그를 찾아 고치는 과정

32

소프트웨어 유지 보수

S/W 유지 보수 비용 : 총 개발비의 80% 이상유지 보수 작업 (Maintenance)버그를 지속적으로 수정하는 유지 보수

사용자의 요구 사항을 반영하기 위한 유지 보수

프로그램 실행 속도 향상, 프로그램 기능 추가, …

유지 보수를 쉽게 하기 위해프로그램을 쉽게 읽을 수 있는 형태로 작성

프로그램에 대한 문서화

33

Basic Constructs of Programming Language

변수 (Variable)배열 (Array)연산자 (Operator)흐름제어 (Flow control)함수호출 (function call)조건문 (If .. Then .. Else)반복문 (Do..While, Repeat)재귀함수호출 (Recursion)……….

34

Warming Up!

Computer Fundamentals

Computer History

Algorithm and Programming

Internet & WWW

Curriculum: School of Computer Science and Engineering

컴퓨터기초 (3/4)

인터넷 (Internet)

A B전용선

사용 양

요금

전용선

전용선에의한통신

A B전용선

C

A C

B

D

E

F. . . .

서로 남의 전용선 무료로 사용서로 남의 데이터 무료로 배달

InternetHost

39

Internet Host

Internet에 직접 연결되어 있다

전용선으로 연결되어 있다 & 항상 가동되고 있다“site” 혹은 “server”라고도 부른다 (보통 workstation 급 이상 또는 대형)고유한 host 이름을 인터넷상에서 가진다 (예: unitel)즉 고유한 주소 (IP address)를 가진다 (예: 147.23.3.11)전세계 어디에서도 이 host 로 들어올 수 (access) 있다TCP/IP라는 인터넷 표준 통신 규약을 채택한다Internet Host 사용자에게 user-id를 발급한다

40

Internet Domain Name

인터넷 상에서 한 개의 호스트를 지정

예: ie.jejunu.ac.kr 국가명 -- jp fr ...

기관 type -- ac edu com go

기관명 -- LAN

기관내 host 명

A C

B

D

E

내 PC와 Internet Host간의 통신은?통신 선로가

(1) 기관이 설치한 LAN이면 무료(2) 가정의 일반 전화선이면 시내 통화료(3) Data 전용선이면 별정의 요금

** Internet Host 간 통신료는 전세계 무료

?

내 PC 를 어느 Host에 연결?

(1) 일반 상업용 ISP (인터넷접속서비스) – KT, Hanaro, CableTV….

(2) 기관 (대학, 대기업 등) 보유 Internet Host -- through LAN

A C

B

D

E?

43

Internet

컴퓨터들간의 네트워크

자주적 네트워크 (상호호혜원칙)제공기능 (소프트웨어)

Emailfile 전송주제별 bbs (전자게시판) WWW (Worldwide Web) telnet (원격 컴퓨터 사용)

44

Internet email

email [email protected]

<user-id> <internet domain name> * 즉시배달

* 배달증명* 등기우편

* 365일 24시간* 무료

* 저장가능

45

URL(Universal Resource Locator)

Internet에서 각 file마다의 주소URL http://jejunu.ac.kr/a/b/c

1.컴퓨터 Internet Domain Name2.파일 Pathname3.전송프로그램 http ftp .…

“file” “document” “page”*.htm file “web doc” “web page” (WWW 경우)

보통 PC 화면 한 개 정도의 정보

46

Web Doc (송수신)

PC

Internet

SW:Web Server

HW: Internet HostHW: PC

SW: Web Browser (Client)

File

*.htm

1. PC에서 click 2. PC는 URL (http://jejunu.ac.kr/doc1.htm)3. URL 에 따라 상대방 Internet Host 수신4. 해당 Internet Host가 요청된 file 을 꺼내옴5. 요청한 PC에게 file 송신6. PC는 file을 받아서 browser 안에서 display (글씨, 소리, 영상, ...)

멀티미디어데이터의표현과 전송

48

화면

12 8 12 33 99 1256 7 13 44 66 2312 4 34 57 99 12…...

컴퓨터내 image의 표현

49

화면12 4 34 57 99 12…...

56 7 13 44 66 2312 4 34 57 99 12…...

12 8 12 33 99 1256 7 13 44 66 2312 4 34 57 99 12…...

** 동영상 ---초당 25 - 30 개의정지화상을교체(video) (image)

컴퓨터내 color 영상의 표현

50

Digital : 통일된 정보표현방법

Digital File수

글씨(Text)소리(Audio)화면(Image)동화상(Video)

**모든정보는 digital로 표현될수있다

51

멀티미디어 컴퓨터

키보드

scanner

마이크

비디오카메라

컴퓨터

image

소리

글씨

스피커

video

52

정보량 v.s. 케이블 전송용량

전화선 100,000 bps

Voice 64,000 bpsAudio 1,400,000 bpsVideo 176,000,000 bps(TV의 경우)

광케이블 1,000,000,000 bps

53

Warming Up!

Computer Fundamentals

Computer History

Algorithm and Programming

Internet & WWW

Curriculum: Teacher College, Computer Education

컴퓨터기초 (4/4)

54

1-4 학년 컴퓨터 관련 교과목1학년 1학기정보사회와컴퓨터 (균형교양), 교육용프로그래밍기초 (균형교양)

1학년 2학기 (--)2학년 1학기초등컴퓨터교육 I (공통), 초등컴퓨터교육론 (심화)

2학년 2학기교육자료제작 (공통), 프로그래밍언어지도법 (심화)

3학년 1학기자료구조와알고리즘 (심화)

3학년 2학기초등컴퓨터교육교수법및교재연구 (심화)

4학년 1학기교육조사방법(심화), 디지털융합교육세미나 (심화)

4학년 2학기정보윤리교육의이해(심화), 컴퓨터창의성교육(심화)

55

컴퓨터기초

Warming Up!

Computer Fundamentals

Computer History

Algorithm and Programming

Internet & WWW

Curriculum: Teacher College, Computer Education

56

If you are an energetic man or woman..(….But I don’t think so……)

Computer Science : An Overview, Addison Wesley; 8 edition (February

18, 2004) by J. Glenn Brookshear

Schaum's Outline of Introduction to Computer Science by Pauline Cushman, Ramon Mata-Toledo McGraw-Hill; 1 edition (September 3, 1999)

Many many 전산개론 books in 시중서점컴퓨터과학총론 (이광수역, 홍릉과학출판사)컴퓨터과학개론 (한금희외, 한빛미디어)최신컴퓨터개론 (김명호저, 대림출판사) 등

57

Studying Academic Computer Science