CS1371 Introduction to Computing for Engineers - PowerPoint PPT Presentation

1 / 16
About This Presentation
Title:

CS1371 Introduction to Computing for Engineers

Description:

Charles Babbage: Difference engine and analytical engine. Herman Hollerith: ... Replica of Babbage's difference engine Science Museum in London. 4. Colossus. 5 ... – PowerPoint PPT presentation

Number of Views:34
Avg rating:3.0/5.0
Slides: 17
Provided by: david3049
Category:

less

Transcript and Presenter's Notes

Title: CS1371 Introduction to Computing for Engineers


1
CS1371Introduction to Computing for Engineers
  • Computers

2
How Computers Work
Learning Objectives Understand the basic
organization of a computer
  • Outline
  • The early history of the computer
  • What are the main components of a computer?
  • How do they work?
  • Software
  • Why is this important to know?

This material was originally developed by Prof.
Chris Paredis, ME
3
Early Computers
  • Charles Babbage Difference engine and
    analytical engine
  • Herman HollerithTabulating machines for 1890
    census
  • Konrad Zuse First electronic computer

Replica of Babbages difference engine Science
Museum in London
4
Colossus
5
ENIAC Electronic Numerical Integrator And
Computer
  • Built from1943-1945
  • Ballistic trajectory computation
  • All electronic, vacuum tubes
  • Program was encoded by changing wiring

6
John von Neumann (1903-1957)
John von Neumann with the IAS computer
7
Two Major Breakthroughs
  • Binary encoding
  • More reliable than analog representations
  • More efficient than decade counters
  • von Neumann Architecture (1945)
  • General purpose electronic computer
  • CPU Memory I/O

8
Modern Computing
  • Today we use sub-micron technology.
  • Microprocessors are composed of tiny transistors
    (switches) that are microscopic.
  • When the switch is on a 1 is represented, when
    it is off, a 0 is represented.
  • They form the basis for logic gates which compose
    the architecture shown in slide 12.
  • The processor then interacts with I/O devices,
    busses, memory, etc. to form the computer.

9
Modern Computing
  • Whats inside a Pentium?

Chip Package
Card which connects processor to Printed Wiring
Board
7,500,000 Transistors
10
The Machine Language
  • What do the transistors process?
  • Language depends on the type of processor
    architecture.
  • Basic computer architectures include
  • Registers
  • Hold a binary value of 1s and 0s
  • Can be 16 bit, 32 bit, 128 bit, etc in length
  • ALU (Arithmetic Logical Unit)
  • Processes the binary values in selected
    registers, i.e. add, subtract, multiply, divide
  • Program Counter
  • Keeps the current place in memory stored
  • Control Unit (decodes instructions)
  • Breaks down the 1s and 0s of an instruction and
    tells the other blocks what to do
  • Address Register
  • Stores the address where to read/write in memory

11
Basic Computer Architecture
Control Unit
Registers0
Registers1
Registers2
Arithmetic LogicalUnit
Test
Registers3
Registers4
Registers5
Program Counter
AddressRegister
Memory and I/OInterface
Data Bus
Address Bus
12
Machine Language
MIPS instruction set for RISC architecture --
(Reduced Instruction Set Computer)
Matlab program
Machine Language
  • j 10
  • i 5
  • if ( ij )
  • f g h
  • else
  • f g - h
  • end
  • 1 li s4, 10 loads 10 into s4
  • 2 li s3, 5 loads 5 into s3
  • 3 bne s3,s4,Else go to Else if ij
  • 4 add s0,s1,s2 f g h (skipped if
    ij)
  • 5 jmp Exit go to Exit
  • 6 Else sub s0,s1,s2 f g - h (skipped
    if i j)
  • 7 Exit

add s0,s1,s2 is translated to
000000 10001 10010 10000 00000 100000
op
s1
s0
s2
add
Shift amt
So 00000010001100101000000000100000 represents
the add instruction.
13
Machine Language Commands
How they are used
What they mean
  • li ? Load immediate
  • bne ? branch if not equal
  • add ? add two values
  • jmp ? jump
  • sub ? subtract

li register, numerical value bne register1,
register2, branch to add dest reg, register1,
register2 jmp program location sub dest reg,
register1, register2
There are many more instructions for this
architecture
14
Program Execution
Phases
Control Unit
  • Fetch
  • Load instruction register with next instruction
  • Decode
  • Set up buses and ALU
  • Execute
  • execute and go back to fetch

Registers0
Registers1
Registers2
Arithmetic LogicalUnit
Test
Registers3
Registers4
Registers5
Program Counter
AddressRegister
When fetch gets data and not a valid instruction
CRASH
Memory and I/OInterface
Data Bus
Address Bus
15
Questions?
16
(No Transcript)
Write a Comment
User Comments (0)
About PowerShow.com