Lecture 12: Machine Processing Intro to IT COSC1078 Introduction to Information Technology Lecture 12 Machine Processing James Harland

Slides:



Advertisements
Similar presentations
Chapter 2: Data Manipulation
Advertisements

Lecture 6: Audio Intro to IT COSC1078 Introduction to Information Technology Lecture 6 Audio James Harland
Lecture 3: ImagesIntro to IT COSC1078 Introduction to Information Technology Lecture 3 Images James Harland
Lecture 5: Audio Intro to IT COSC1078 Introduction to Information Technology Lecture 5 Audio James Harland
COSC1078 Introduction to Information Technology Lecture 2 Overview
Lecture 16: Processes Intro to IT COSC1078 Introduction to Information Technology Lecture 16 Processes James Harland
James Harland COSC1078 Introduction to Information Technology Lecture 12 System Fundamentals James Harland
Chapter 2 Data Manipulation Dr. Farzana Rahman Assistant Professor Department of Computer Science James Madison University 1 Some sldes are adapted from.
2.3) Example of program execution 1. instruction  B25 8 Op-code B means to change the value of the program counter if the contents of the indicated register.
Computer Architecture and Data Manipulation Chapter 3.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Computer Science: An Overview Tenth Edition by J. Glenn Brookshear Chapter.
Lecture 1: IntroductionIntro to IT COSC1078 Introduction to Information Technology Lecture 2 Overview James Harland
Lecture 14: Review Intro to IT COSC1078 Introduction to Information Technology Lecture 14 Revision and Review James Harland
Lecture 6: Audio Intro to IT COSC1078 Introduction to Information Technology Lecture 6 Audio James Harland
Midterm Wednesday Chapter 1-3: Number /character representation and conversion Number arithmetic Combinational logic elements and design (DeMorgan’s Law)
Lecture 1: IntroductionIntro to IT COSC1078 Introduction to Information Technology Lecture 1 Introduction James Harland
Computer Processing CSCE 110 J. Michael Moore.
Lecture 4: ImagesIntro to IT COSC1078 Introduction to Information Technology Lecture 4 Images James Harland
Lecture 3: ImagesIntro to IT COSC1078 Introduction to Information Technology Lecture 3 Images James Harland
Lecture 16: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 16 Operating Systems James Harland
Lecture 24: Review Intro to IT COSC1078 Introduction to Information Technology Lecture 24 Review James Harland
1 Sec (2.3) Program Execution. 2 In the CPU we have CU and ALU, in CU there are two special purpose registers: 1. Instruction Register 2. Program Counter.
J. Michael Moore Computer Processing CSCE 110. J. Michael Moore ProcessorInputOutput Memory Storage.
Lecture 4: ImagesIntro to IT COSC1078 Introduction to Information Technology Lecture 4 Images James Harland
CEG 320/520: Computer Organization and Assembly Language Programming1 CEG 320/520 Computer Organization and Assembly Language Programming.
Lecture 14: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 14 Operating Systems James Harland
Intro to CS Chapt 2 Data Manipualtion 1 Data Manipulation How is data manipulated inside a computer? –How is data input? –How is it stored? –How is it.
Basic Microcomputer Design. Inside the CPU Registers – storage locations Control Unit (CU) – coordinates the sequencing of steps involved in executing.
Lecture 11: Machine Processing Intro to IT COSC1078 Introduction to Information Technology Lecture 11 Machine Processing James Harland
Lecture 18: Reflect and Research Intro to IT COSC1078 Introduction to Information Technology Lecture 18 Reflect and Research James Harland
Lecture 17: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 17 Memory and Deadlock James Harland
CS 1308 Computer Literacy and the Internet Computer Systems Organization.
 Design model for a computer  Named after John von Neuman  Instructions that tell the computer what to do are stored in memory  Stored program Memory.
Lecture 4: ImagesIntro to IT COSC1078 Introduction to Information Technology Lecture 4 Images James Harland
Computer Systems Organization CS 1428 Foundations of Computer Science.
Microprocessor Dr. Rabie A. Ramadan Al-Azhar University Lecture 2.
Lecture 1: IntroductionIntro to IT COSC1078 Introduction to Information Technology Lecture 1 Introduction James Harland
Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland
CS 111 – Sept. 15 Chapter 2 – Manipulating data by performing instructions “What is going on in the CPU?” Commitment: –Please read through section 2.3.
Important Concepts  Parts of the CPU  Arithmetic/Logic Unit  Control Unit  Registers  Program Counter  Instruction Register  Fetch/Decode/Execute.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Lecture 11: System Fundamentals Intro to IT COSC1078 Introduction to Information Technology Lecture 11 System Fundamentals James Harland
Chapter 2 Data Manipulation. © 2005 Pearson Addison-Wesley. All rights reserved 2-2 Chapter 2: Data Manipulation 2.1 Computer Architecture 2.2 Machine.
Computer Hardware A computer is made of internal components Central Processor Unit Internal External and external components.
Lecture 16: Operating Systems Intro to IT COSC1078 Introduction to Information Technology Lecture 16 Operating Systems James Harland
CS 1308 Computer Literacy and the Internet. Objectives In this chapter, you will learn about:  The components of a computer system  Putting all the.
Copyright © 2008 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Data Manipulation Brookshear, J.G. (2012) Computer Science: an Overview.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Chapter 2: Data Manipulation
Simple ALU How to perform this C language integer operation in the computer C=A+B; ? The arithmetic/logic unit (ALU) of a processor performs integer arithmetic.
Lecture 5: Audio Intro to IT COSC1078 Introduction to Information Technology Lecture 5 Audio James Harland
CMSC 104, Lecture 061 Stored Programs A look at how programs are executed.
Chapter 2 Data Manipulation © 2007 Pearson Addison-Wesley. All rights reserved.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
Data Representation – Instructions
The fetch-execute cycle
The Processor and Machine Language
Functional Units.
CS149D Elements of Computer Science
Chapter 2: Data Manipulation
Chapter 2: Data Manipulation
The Von Neumann Machine
A Top-Level View Of Computer Function And Interconnection
Information Representation: Machine Instructions
Objectives Describe common CPU components and their function: ALU Arithmetic Logic Unit), CU (Control Unit), Cache Explain the function of the CPU as.
Instruction execution and ALU
Chapter 2: Data Manipulation
Presentation transcript:

Lecture 12: Machine Processing Intro to IT COSC1078 Introduction to Information Technology Lecture 12 Machine Processing James Harland

Lecture 12: Machine ProcessingIntro to IT Introduction James Harland URL: Phone: Office: Consultation: Mon , Thu What colour is my office door? Carpet? Chair?

Lecture 12: Machine ProcessingIntro to IT Introduction to IT 1 Introduction 2 Images 3 Audio 4 Video WebLearnTest 1 5 Binary Representation Assignment 1 6 Data Storage 7 Machine Processing 8 Operating Systems WebLearn Test 2 9 Processes Assignment 2 10 Internet 11 Internet Security WebLearn Test 3 12 Future of ITAssignment 3, Peer and Self Assessment

Lecture 12: Machine ProcessingIntro to IT Overview  Questions?  Assignments 1 & 2  Machine Processing  Questions?

Lecture 12: Machine ProcessingIntro to IT Assignments 1& 2 Assignment 1  Currently being marked  Will have marks out next week Assignment 2  Specification has been published  Must be done in groups of 2 or 3  Can change groups from Assignment 1 (if you wish)  Must have a blog on Blackboard

Lecture 12: Machine ProcessingIntro to IT What do computers do?  Compute!  Input/Output  Processing  Memory

Lecture 12: Machine ProcessingIntro to IT Moore’s Law “Processor speed doubles about every 18 months” -- Gordon Moore, Intel co-founder, 1965  Intended for period  Held true ever since 1965!  Must end sometime …

Lecture 12: Machine ProcessingIntro to IT Moore’s Law

Lecture 12: Machine ProcessingIntro to IT Moore’s Law

Lecture 12: Machine ProcessingIntro to IT Memory  Memory differs in performance and cost  Processor is typically much faster than memory

Lecture 12: Machine ProcessingIntro to IT Memory  Arranged as a hierarchy of cache Level 1 Level 2 Level 3 Main Memory

Lecture 12: Machine ProcessingIntro to IT Processing ALU CPU BUS REGISTERS MEMORY

Lecture 12: Machine ProcessingIntro to IT Machine Instructions 1.Move first value from memory into register 1 2.Move second value from memory into register 2 3.If register 2 is zero, go to Step 6 4.Divide register 1 by register 2 & store result in register 3 5.Store register 3 value in memory 6.Stop “Divide two numbers”

Lecture 12: Machine ProcessingIntro to IT Machine Instructions 1.LOAD register 1 from memory 2.LOAD register 2 from memory 3.JUMP to Step 6 if register 2 is zero 4.Divide register 1 by register 2 and store result in register 3 5.STORE register 3 value in memory 6.Stop

Lecture 12: Machine ProcessingIntro to IT Instructions in Binary? … LOAD register 1 LOAD register 2 JUMP …. STORE … MEMORY

Lecture 12: Machine ProcessingIntro to IT One Scheme 16-bit operation codes (simple example) Operation Code (4 bits) Operand (12 bits) Represent as 4 Hexadecimal numbers (0-9,A-F) Each instruction is two bytes long

Lecture 12: Machine ProcessingIntro to IT One Scheme 156C LOAD register 5 from memory 6C 166D LOAD register 6 from memory 6D 5056 ADD register 5 & 6 & store in register 0 306E STORE register 0 to memory 6E C000 HALT.... (up to 2 16 = 65,536 different instructions)

Lecture 12: Machine ProcessingIntro to IT Fetch Decode Execute FETCH EXECUTEDECODE Machine cycle

Lecture 12: Machine ProcessingIntro to IT Fetch Decode Execute FETCH EXECUTEDECODE Machine cycle

Lecture 12: Machine ProcessingIntro to IT Two special registers Instruction register: holds current instruction Program counter: address of next instruction Fetch: Put instruction specified by program counter into instruction register Increment program counter by two Decode: Work out what to do Execute: Perform the instruction

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A0 AddressContents

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A0 FETCH 156C

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A2 FETCH 156C

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A2 DECODE 156C 6C 2B

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A2 EXEC 156C 6C 2B 2B5

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A2 FETCH 166D

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A4 FETCH 166D

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A4 DECODE 166D

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A4 EXEC 166D 6D FF FF6

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register A6 FETCH 5056

Lecture 12: Machine ProcessingIntro to IT Processing A0 15 A1 6C A2 16 A3 6D A4 50 A5 56 A6 30 A7 C0 A8 C0 A9 00 Program Counter Instruction Register …

Lecture 12: Machine ProcessingIntro to IT Processing Program Counter Instruction Register EXEC B258 B4

Lecture 12: Machine ProcessingIntro to IT Processing Program Counter Instruction Register EXEC B258 58

Lecture 11: Machine ProcessingIntro to IT Processing  Jump instructions change program counter  Can load any memory address into program counter (!!!)  Often use pipelining for efficiency  Fetch next instruction while executing  Processor doesn’t wait for fetch to complete  Can do more than one instruction …

Lecture 12: Machine ProcessingIntro to IT Connecting devices ??

Lecture 12: Machine ProcessingIntro to IT Universal Serial Bus (USB)

Lecture 12: Machine ProcessingIntro to IT Memory-mapped I/O Program Counter Instruction Register C4 EXEC FF FF6 Just like writing to a memory address

Lecture 12: Machine ProcessingIntro to IT Direct Memory Access (DMA) Put some data in memory! OK

Lecture 12: Machine ProcessingIntro to IT Direct Memory Access Direct Memory Access means that doesn’t have to wait for the

Lecture 12: Machine ProcessingIntro to IT What are these? Firewirebottleneck bandwidthhandshakeParallel port Serial port

Lecture 12: Machine ProcessingIntro to IT Busy Bertie the bus … Von Neumann bottleneck

Lecture 12: Machine ProcessingIntro to IT Conclusion  Work on Assignment 2  Finish reading book!