310 likes | 804 Views
Class Information. LecturerProf. Lynn Choi, School of Electrical Eng.Phone: 3290-3249, ??? 411, lchoi@korea.ac.krTA: ???, 3290-3896, smile97@korea.ac.krTimeTues/Thur 10:30pm 11:45pm, Office Hour: Thur 4pm 5pmPlace??? 117TextbookComputer Science Illuminated", The 3rd Edition, Nell Dale
E N D
1. Introduction to Computer Science Chapter I. Big Picture
2. Class Information Lecturer
Prof. Lynn Choi, School of Electrical Eng.
Phone: 3290-3249, ??? 411, lchoi@korea.ac.kr
TA: ???, 3290-3896, smile97@korea.ac.kr
Time
Tues/Thur 10:30pm 11:45pm, Office Hour: Thur 4pm 5pm
Place
??? 117
Textbook
Computer Science Illuminated, The 3rd Edition, Nell Dale and John Lewis, Jones and Barlett, 2007.
References
Foundations of Computer Science, The 2nd Edition, Behrouz Forouzan and Firouz Mosharraf, Thomson, 2004.
Class homepage: http://it.korea.ac.kr : slides, announcements
3. Computer: What is a Computer?
4. Whats Inside a Computer System?
5. Computer Components
6. Whats inside a CPU?
7. Logic Level : Gates
8. Circuit Level: Transistors
9. What is Computer? Computer
A kind of digital system
All the information is represented, stored, and processed in binary digits.
A programmable device
Processor inside microprocessors, digital signal processor (DSP), microcontroller, etc.
Processors can be programmed using their machine instructions.
Hardware
The physical elements of a computing system
Printer, mother boards, wires, keyboard, CPU, DRAM, HDD, CD-ROM, network cards, ..
Software
The programs that provide the instructions for a computer to execute
Operating systems: Windows, Linux, MacOS
Translators: C compilers, Java interpreters, FORTRAN compilers
Applications; Internet Explorer, Microsoft Office, flight simulators, games, etc.
10. Layers of a Computer System
11. Abstraction Abstraction
A mental model that removes complex details
This is a key concept. Abstraction will reappear throughout the text be sure you understand it!
Internal details
12. Abstraction Abstract view
13. Layers of a Computer System Information Layer
How to represent numbers, texts, images, audios, and videos
All the information is represented using binary digits, i.e. bits (0s and 1s)
Hardware Layer
Physical components; CPU, memory, HDD, motherboards, gates and circuits
Programming Layer
Machine language, assembly language, high-level language, software
Operating System Layer
Interact with users, schedule programs, and manage hardware resources
Application Layer
Solve real-world problems
Run application programs to use computers abilities to perform various tasks
Communication Layer
Computers are connected into networks so that they can share information and resources
14. Layers of Software
15. Class Information Content of this class
Introduction: Big Picture (Ch. 1)
Information Layer: how information is represented in a computer (Ch. 2, 3)
Hardware Layer: gates and circuits (Ch. 4-5)
Programming Layer (Ch. 6-9)
Machine language, assembly language, high-level programming languages
Data structures and algorithms
Operating System Layer (Ch. 10-11)
Process management, file system
Application Layer (Ch. 12-14)
AI, graphics, databases, simulation
Communication Layer (Ch. 15-16)
Computer Networks
World Wide Web
16. Grading Midterm: 35%
Final: 40%
Homework, Project: 25%
Class participation: + 10%
17. Areas of Computer Science Systems Area
Algorithms and Data Structures
Programming Languages and Compilers
Computer Architecture
Operating Systems
Software Engineering
Human-Computer Interaction
Computer Networks
Application Area
Numerical Computation
Databases
Artificial Intelligence and Robotics
Graphics
Bioinformatics
World Wide Web
Games
18. History of Computing
19. History of Computing Abacus: appeared around 16th century BC
Developed in Babylonia
Imported to China and improved substantially around 1200s BC
Modern abacus is an improved variety from Japan after the World War II
Pascals Arithmetic Machine (Pascaline)
French mathematician, physicist, theologian, philosopher
The first mechanical calculator
Developed in 1642 (only at 19 years old)
only add/subtract
10 toothed wheels
Leibnizs Calculator
Developed in 1673 based on Pascals machine
Can do add/subtract/multiply/divide
20. History of Computing Analytic Engine
The first autonomic computing machine
Designed by Charles Babbage in 1833
Like todays computer, it has central processing unit, memory storage, software instructions, punch card inputs, and printed outputs
50 decimal digit calculations
Memory of 1000 digits
Operated by steam power
Some people refer Babbage the Father of Computing
Ada Lovelace
The first programmer using the Analytic Engine
Subroutines, loops, conditional jumps
21. History of Computing Turing Machine
A mathematical computing model proposed by Alan M. Turing in 1936
Abstract symbol manipulating device that can simulate the logic of any computer
Theoretical background to modern computers
ACM Turing Award the Novel prize in Computer Science
Consists of infinite linear tape, read/write head, control unit
Mapping table gives state transition functions, i.e. given a state and a symbol, erase symbol/rewrite symbol, move R/W head to left or right, and go to a new state
Contribute to the following concepts
Stored program concept
High-level programming language concepts
Recursive function concept
22. ENIAC ENIAC
ENIAC (Electronic Numerical Integrator And Computer)
1st general-purpose electronic computer
Designed by John Mauchly and John Presper Eckert at Upenn
Funded by US BRL (Ballistic Research Lab) to develop range and trajectory tables for new weapons
Until then, BRL employee more than 200 people with desktop calculators to solve the necessary ballistics equations
The proposal accepted in 1943, the machine completed in 1946, and dismantled in 1955
Used for H-bomb research
Characteristics
30 tons, 15000 square feet, 18000 vacuum tubes, 140 KW power dissipation
Decimal machine
20 accumulators each holding 10-digit decimal number
Each digit is represented by a ring of 10 vacuum tubes
Manually programmed by setting switches and plugging/unplugging cables
5,000 additions per second
23. ENIAC
24. The Von Neumann Machine - IAS IAS
By von Neumann at the Princeton Institute for Advanced Studies
Von Neumann was a consultant on the ENIAC project
Stored program concept
The ability to store its instructions in its internal memory and process them in its arithmetic unit, so that in the course of a computation they may be not just executed but also modified at electronic speeds
Started in 1946 and completed in 1952
All modern computer systems are called Von Neumann machines
The same structure and the same functions
Processor, memory, inputs, and outputs
Stored program concept, PC, MAR
1000 x 40 bit words
Binary number
2 x 20 bit instructions
25. The Von Neumann Machine & IAS
26. Staff of IAS Computer Project
27. Von Neumann - Biography
28. Commercial Computers in 1950s Sperry-Rand Corporation
Eckert & Mauchly Computer Corporation was founded in 1947
Merged with Sperry-Rand Corporation
UNIVAC (Universal Automatic Computer) I
Used for (population) census in 1950
UNIVAC II
Higher performance, larger memory, upward compatibility
Provides backward compatibility from UNIVAC and secure customer base
IBM
Start as an equipment company for punch card
IBM 701, 1953
The first commercial stored program computer
Used for scientific application
IBM 702, 1955
Business applications
29. Computer Generations 1st generation computers
Vacuum tube, 1946-1957, 40K operations/sec
2nd generation computers
Transistor, 1958-1964, 200 K operations/sec
Smaller, cheaper, less heat dissipation
William Shockley et al. in 1947 at Bell Labs
3rd generation computers
SSI, MSI, 1965-1971, 1 M operations/sec
4th generation computers
LSI, 1972-1977, 10 M operations/sec
5th generation computers
VLSI, 1978 to date, 100 M operations/sec
30. Advances in Intel Microprocessors
31. Power PC and Sony PlayStation III
32. Microprocessor Performance Curve