1 / 21

컴퓨터와 프로그램

컴퓨터와 프로그램. 2004 년 9 월 23 일 KAIST 전산학과 한 환 수. 오늘 이야기. 컴퓨터와 프로그래밍 언어 ( 초기의 역사 ) 프로그래밍 언어와 컴퓨터 구조의 발전 미래의 컴퓨터와 프로그램 ?. 첫 프로그래밍 언어와 가상의 기계. GW-BASIC 100 가지 예제 Apple II. BASIC. BASIC B eginner’s A ll-purpose S ymbolic I nstruction C ode 1960s invented at Dartmouth College

genero
Download Presentation

컴퓨터와 프로그램

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 컴퓨터와 프로그램 2004년 9월 23일 KAIST 전산학과 한 환 수

  2. 오늘 이야기 • 컴퓨터와 프로그래밍 언어 (초기의 역사) • 프로그래밍 언어와 컴퓨터 구조의 발전 • 미래의 컴퓨터와 프로그램?

  3. 첫 프로그래밍 언어와 가상의 기계 • GW-BASIC 100가지 예제 • Apple II

  4. BASIC • BASIC • Beginner’s All-purpose Symbolic Instruction Code • 1960s invented at Dartmouth College • MITS altair kit (Intel 8080 processor) • MicroSoft BASIC interpreter (Paul Allen, Bill Gates) • 5 weeks to complete for MITS altair

  5. Apple II • Apple ][ • 1977년, Steve Wozniak, Steve Jobs • Motorola 6502 processor (8-bit, 1MHz) • CP/M or DOS • Paper tape / FSKcassette tape

  6. CP/M 과 MS-DOS • CP/M (Control Program/Microcomputer) • Dr. Gary Kildall (Digital Research Institute) • 1973년, Intel 8008 with 8” floppy disk • 1976년 Rewrote with BIOS for different H/W • For IMSAI microcomputer (Intel 8080) • MS-DOS (Disk Operating System) • IBM과 DRI 협상 결렬 :( • MS proposed DOS/BASIC deal on favorable term for IBM • Modified QDOS from Seattle Computer Products • Copying CP/M system calls, program structures, … • CP/M-86 @ $240 vs. MS-DOS @ $60

  7. Alto, LISA, GEM과 Windows • Xerox Alto • 1978년, First GUI • Window, Icon, Mouse, Pointer • 초고가로 실패- $40,000 • Apple LISA (Macintosh 초기모델) • 1981년, Steve Jobs • 역시 고가- $10,000 • DRI GEM (Graphical Environment Manager) • 1983년 Comdex, First GUI for PC • Virtually the same look and feel with Macintosh • Dropped due to Apple’s threat to sue • MS Windows v1.0 • 1985년Comdex • Different look and feel from Macintosh

  8. Killer Apps - WordStar • WordStar • 1978년, Rob Barnaby (MicroPro International) 개발 • Written all in assembly language, running on CP/M • More illegal copies than originals • 1984년, $70 million sales, largest software company in USA • Competition from WordPerfect, MS Word

  9. Killer Apps - VisiCalc • VisiCalc • 1979년, Dan Bricklin & Bob Frankston 개발 • 첫해 1 million copies @ $100, running onApple II • Lotus 1-2-3로 이어짐 • Quatro Pro (Borland), Excel (MS)

  10. Shugart Technology • Shugart Technology • 1979년 Alan Shugart, Finis Conner 설립 • Seagate Technology로 개명 • 1980년, first Hard Disk (5~10MB) • Designed new interface SASI • NCR later modified to SCSI

  11. IBM PC • IBM PC (1980) • Intel 8088 (16-bit, 4.77MHz) • 64K ROM, 64K RAM • PC-DOS (MS-DOS) • Built-in BASIC interpreter • IBM PC XT (1983년) : 64K~640K RAM • IBM PC AT (1984년) : Intel 80286 (6MHz), 512K~3M RAM,

  12. 프로그래밍 언어와 컴퓨터 구조

  13. 프로그래밍 언어의 족보 1950s 1960s 1970s 1980s 1990s 2000s ? SQL SQL/92 SML SML 97 ML Haskell LISP CLisp Scheme CLOS Fortran I Fortran IV Fortran 77 Fortran 90 HPF COBOL PL/1 Modula-2 Modula-3 ALGOL58/60 Pascal Ada Ada95 ALGOL 68 VHDL VHDL 93 Verilog XL Verilog HDL BASIC C# CPL B C C++ Java SIMULA Smalltalk imperative object-oriented functional logic hardware description w/ time delay Prolog

  14. 세대별 언어의 변천 • 1세대 언어 (50년대 ~ 60년대 초) • Fortran (과학계산), COBOL (사무용) • 간단한control structure, 정적 메모리 관리 • 2세대 언어 (60년대) • Algol-60, PL/1, Basic • 블록 구조의control structure, 동적 메모리 관리 • 3세대 언어 (70년대 초) • Algol-68, Pascal, Simula, C • User-defined 자료 타입 • Simple language features • 4세대 언어 (70년대) • Ada, Modula-2 • Data abstraction, Information hiding

  15. 현재 널리 쓰이는 프로그래밍 언어 • C/C++ • UNIX and system software written in C • C++ added strong type, object-oriented features • Most popular language • Java • Write once, run everywhere • Object-oriented features • Memory-leakage free programming • Many business applications based on J2EE • Perl • Script language • Powerful string match and manipulations • Good at handling multiple programs in sequence

  16. Microprocessors for PC’s • Intel processors dominate • 8086 (1978년) – 16bit processing, 16bit bus • 8088 (1979년) – 16bit processing, 8bit bus • IBM PC에서 채택 • 80286 (1982년) – 8086 개량판, • Protected mode addressing enables “virtual memory” • 6MHz에서 시작, 20MHz에서 작동하도록 발전 • 80386 (1988년) – 32bit processing, 32bit bus • 33MHz에서까지 작동 • Able to run UNIX with “flat addressing” • Linux/gcc doesn’t use any instruction introduced later • 80486 (1991년) – 80386 + math coprocessor (80387) • 120MHz에서까지 작동 • 5 stage pipeline, cache

  17. Pentium • Pentium (1993년) – P5 • Superscalar (integer unit, FP unit), dual pipeline • trademark protection • PentiumPro (1995년) – P6 • 118bit uOP로 변환, Out-of-order execution • L2 cache • Pentium/MMX (1997년) • SIMD (64-bit vector – 1,2,4 byte integer) • Pentium II (1997년) • Merged MMX line on to PentiumPro • Pentium III (1999년) • Streaming SIMD (128-bit vector, handle float) • 10 stage pipeline • Pentium 4 (2001년) • SSE2 (128-bit vector, handle double) • 20 stage pipeline

  18. x86 Clones • Advanced Micro Devices (AMD) • Historically, AMD has followed just behind Intel • A little bit slower, a lot cheaper • Recently, close competitors to Intel • Developing own extension to 64 bits • Athlon 64 FX, Opteron • Transmeta • Recent start-up (Employer of Linus Torvalds) • Radically different approach • Translates x86 code into VLIW code • High degree of parallelism • Shooting for low-power market

  19. New Species: IA64 • Itanium (2001년) • Extends to IA64, a 64-bit architecture • Radically designed for high performance • VLIW/EPIC instruction-set architecture • Will be able to run existing IA32 programs • On-board “x86 engine” • Joint project with HP starting early 1990’s • Itanium 2 (2002년) • More functional units (4 INT units, 2 FP units, 1 branch unit) • Bigger on-chip cache (3~6MB) • Big performance boost

  20. Moore’s Law • Gordon Moore (co-founder of Intel) • 2X density every 18 month 4004 - 1971 - 2300 Transistors - 10 um process - 12 mm2 - 108 kHz Pentium 4 - 2002 (31 yrs) - 55M (24K X) - 0.13um (1/77K X) - 142 mm2 (12 X) - 2.8 GHz (26K X) Itanium 2 - 2002 (31 yrs) - 220M (96K X) - 0.18um (1/55K X) - 421 mm2 (35 X) - 1 GHz (9K X)

  21. 미래의 컴퓨터 • 미래의 컴퓨터는 어떤 모양일까? • Ubiquitous computing – embedded processors all around • Quantumn computer? • Biological computer? • Robot? • 미래의 프로그램은? • 전문 프로그래머? • End-User Program? • Should be EASIER than now! • Natural way of Programming • and Debugging

More Related