Introduction to Computer Science Fall 2003, 劉震昌 Ref: Computer Science: an overview J. Glenn...
-
date post
19-Dec-2015 -
Category
Documents
-
view
260 -
download
2
Transcript of Introduction to Computer Science Fall 2003, 劉震昌 Ref: Computer Science: an overview J. Glenn...
Introduction to Computer Science
Fall 2003, 劉震昌
Ref: Computer Science: an overviewJ. Glenn Brookshear
Outline Concept of computers
Computer software: algorithm Computer hardware: algorithmic machine Turing Machine
5 major components of computers
CSIE class schedule
Hardware
Operation System
Application Program
High level
Low level
資網 C
程設 C++Java
資演 (1)資演 (2)
邏設電路
微算機計組
數電
作業系統
系統程式
網路
資料庫
Computer software: Algorithm 演算法
Computers are machines to execute Algorithm
Fundamental concept of CS Def. 1: a set of steps that defines how
a task is performed Def. 2: an ordered set of unambiguous,
executable steps that defines a terminating activity
Albert
Baker
Algorithm: example Sorting: sort the cards from top to
down in alphabetical order
Charlie
排序
Algorithm: sort (cont.)Albert
BakerCharlie
input
Albert
BakerCharlie
AfterStep 1
Charlie
BakerAlbert
AfterStep 2
Charlie
AlbertBaker
AfterStep 3
Algorithm: sort (cont.)
Input: 3 cards in arbitrary order
1. Compare the names on the first and second cards. Exchange them if they are out of order.
2. Compare the names on the second and third cards. Exchange them if they are out of order.
3. Compare the names on the first and second cards. Exchange them if they are out of order.
Output: 3 cards in alphabetical order
Properties of algorithms
Goal: find a single set of directions that describe how any problem could be solved
Algorithm = Programs within computers
The intelligence required to perform the task is encoded in the algorithm
Computers hardware? Concept of algorithm appeared first Computers are designed to implement algorith
ms Computers 電腦 are not smart themselves…
+
Development of Algorithmic Machines
Algorithmic machines: machines that perform algorithm tasks
Abacus( 算盤 ): ancient Greek and Roman
Blaise Pascal(1623-1662), France
Development of Algorithmic Machines (cont.)
Charles Babbage(1792-1871), England
Herman Hollerith
解多項式
打孔機
Turing machines
The abstract model of general-purpose algorithmic machines
1936 by Alan M. Turing You will learn more in the class of automa
ta and formal language 自動機與形式語言
Turing machines (cont.)
Controlunit
tape
read/write head
… …
symbols
state of the machines
Components of a Turing machine
Turing machines (cont.)
Prototype of today’s computer Control unit -> CPU States -> registers Tape cells -> memory Symbols -> 0 and 1
The power of Turing machine If a problem cannot be solved by a Turing
machine, then it cannot be solved by any algorithmic system
John von Neumann machine
In early computing machines, the programs were built as part of the machine
Store-program concept Program, just like data, can be coded and
stored in main memory Control unit extracts the program from
memory, decodes the instructions, and executes them
Some data(bit patterns) were interpreted as instructions -> machine language
Outline Concept of computers
Computer software: algorithm Computer hardware: algorithmic machine Turing Machine
5 major components of computers
Computer hardware
Centralprocessing
unitmemory
Inputdevices
Outputdevices
Auxiliarymemory
Peripherals 週邊
Bus: for data transmission
CPU (central processing unit)
Carry out the instructions in the program
CPU
ALU Controlunit
registers
ALU: arithmetic/logic unit
CPU – control unit
Instruction fetch
Instruction decoding
Instruction execution
Memory read/writetime
Instruction cycle
Memory Main memory
RAM(random access memory) Fast Volatile 揮發
Auxiliary memory Secondary storage Slower Permanent Ex. Hard Disk, CD-ROM
Overview of computer systems
Hardwaremachines
MS WindowsUnixLinux
Operationsystem
shelldesktop dosUser
Interface
applications
machinelanguage
assemblylanguage
High-levellanguage
compiler
assembler
software