SlideShare a Scribd company logo
1 of 30
Download to read offline
I. INTRODUCTION
Microcomputer Systems:
Basic Computer Organization
1. Basic Organization of a Microcomputer
2. Von-Neumann’s Simple Computer
3. The Fetch-Decode-Execute Cycle
Outline
At the end of the discussion, we should
be able to
 describe the basic organization of
microprocessor-based systems and the Von
Neumann system,
 discuss how a program instruction is
executed.
Objectives
The Basic Organization of a Microcomputer
MEMORY
INPUT
OUTPUT
ALU
CPU
CU
REGISTER
FILE
The Basic Organization of a Microcomputer
Input and Output
 the I/O devices connected to the bus
 bus –the collection of the computer's electrical
lines where signals pass through
 the bus is generally divided into four types: the
data, address, control, and power bus
INPUT
OUTPUT
The Basic Organization of a Microcomputer
CPU
 the Central
Processing Unit; that
is, the computer's
processor
 composed of the
CU, ALU, and
Register File
 reads one
instruction from
memory at a time
and executes it
ALU
CPU
CU
REGISTER
FILE
The Basic Organization of a Microcomputer
CU
 the Control Unit
 the part of the CPU that sends control signals
to the different parts of the system through
the control bus
The Basic Organization of a Microcomputer
ALU
 the Arithmetic and Logic Unit
 a logic circuit in the CPU that is responsible
for performing mathematical and logical
operations.
The Basic Organization of a Microcomputer
Register File
 the collection of registers inside the CPU
 a register – a set of flip-flops treated as a
single unit
 flip-flop – a digital logic circuit capable of
storing a single bit
 there are several registers in a computer
system, some are for general purposes while
others are called special-purpose registers
The Basic Organization of a Microcomputer
Memory
 the program-addressable storage from
which instructions and other data may be
loaded for subsequent execution or
processing
 typically the memory is organized in chunks
of 8 bits (called a byte)
 each chunk (byte) has an address
MEMORY
Von Neumann’s Simple Computer
MEMORY
INPUT
OUTPUT
ALU
CPU
CU
PC
IR
MAR
MBR
A
Von Neumann’s Simple Computer
PC
 Program Counter – contains the address
of the next instruction to be executed.
IR
 Instruction Register – contains the current
instruction word.
Von Neumann’s Simple Computer
MAR
 Memory Address Register –contains the
memory address of data needed for an
instruction's execution.
MBR
 Memory Buffer Register –contains data
needed for an instruction's execution.
Von Neumann’s Simple Computer
A
 Accumulator –the register used as
temporary storage for data or for the
result of arithmetic or logical operations.
The Fetch-Decode-Execute Cycle
1. Get the instruction from the memory
using the address contained in PC.
2. Put the instruction into IR.
3. Increment the value in PC.
4. Decode the value in IR.
5. Execute the operation specified in the
instruction.
6. Repeat step number 1.
Instructions
 Each instruction is stored in memory as
a bunch of bits.
 The CPU decodes the bits to
determine what should happen.
 For example, the instruction to add 2
numbers might look like this:
10100110101001101010011010100110
 Instructions are from a language
called machine language.
Machine Code
 An executable program is a sequence of
these simple instructions.
 The sequence is stored in memory.
 The CPU processes the simple instructions
sequentially.
 Some instructions can tell the CPU to jump
to a new place in memory to get the next
instruction.
Sample Program
# Instruction
1. set memory[801] to hold 00000001
2. set memory[802] to hold 00000000
3. if memory[802] = 10 jump to instruction #8
4. increment memory[802]
5. set memory[803] to 2 times memory[801]
6. put memory[803] in to memory[801]
7. jump to instruction #3
8. print memory[801]
Illustration
CPU
Address MEMORY
0 Instruction # 1
1 Instruction # 2
2 Instruction # 3
3 Instruction # 4
. . .
. . .
. . .
801
802
803
Human vs. Machine Programs
 The computer can
only understand the
bits (the encoded
program) = Machine
Language
 Humans don’t like to
deal with bits, so they
developed English-like
abbreviations for
programs.
= Assembly Language
I. INTRODUCTION
The Rationale of Using Low-level Language
Objectives
At the end of this section, we should be
able to:
 Identify different levels of programming
languages
 Discuss the rationale of using low-level
languages
Hierarchy of Programming Languages
Machine Language
 This is what the computer actually sees
and deals with. Every command the
computer sees is given as a number or
sequence of numbers.
Hierarchy of Programming Languages
Assembly Language
 the same as machine language, except
the command numbers have been
replaced by letter sequences which are
easier to memorize.
 middle-level language
 maps human-readable mnemonics to
machine instructions
 allows machine-level programming without
writing in machine language
Hierarchy of Programming Languages
Assembly Language
 For example, an x86 processor can execute
the following binary instruction as expressed
in machine language:
Binary: 10110000 01100001
Hexadecimal: B0 61
 The equivalent assembly language
representation is easier to remember:
MOV AL, #61h
Hierarchy of Programming Languages
High-Level Language
 High-level languages are there to make
programming easier.
 Assembly language requires you to work with the
machine itself. High-level languages allow you to
describe the program in a more natural
language.
 A single command in a high-level language
usually is equivalent to several commands in an
assembly language.
Reasons for not using Assembly
 Development time: it takes much longer to
develop in assembly
 Maintainability: unstructured
 Portability: platform-dependent
Reasons for using Assembly
 To understand how CPUs and compilers work
 Developing compilers, debuggers and other
development tools
 Hardware drivers, system code and low-level
tasks such as bootloaders
 Embedded systems
 Reverse Engineering
 Address critical performance issues (Optimizing
for speed or space)
The Rationale of Using Low-level Language
 By gaining a deeper understanding of how
computers work at a lower level, one can
often be more productive developing
software in higher level language such as C.
 Learning to program in assembly language is
an excellent way to achieve this goal.
(Ref: Paul A. Carter, PC Assembly Language, July 23 2006)
An Application
 NBA Jam

More Related Content

What's hot

microprocessor architecture
microprocessor architecture microprocessor architecture
microprocessor architecture Nadeem Hilal Wani
 
Computer Organization: Introduction to Microprocessor and Microcontroller
Computer Organization: Introduction to Microprocessor and MicrocontrollerComputer Organization: Introduction to Microprocessor and Microcontroller
Computer Organization: Introduction to Microprocessor and MicrocontrollerAmrutaMehata
 
Microprocessor & microcontroller
Microprocessor & microcontroller Microprocessor & microcontroller
Microprocessor & microcontroller Nitesh Kumar
 
Microprocessor & Micro-controller
Microprocessor & Micro-controllerMicroprocessor & Micro-controller
Microprocessor & Micro-controllerOm Bheda
 
MICROPROCESSOR,BASICS AND MEMORY CONCEPT
MICROPROCESSOR,BASICS AND MEMORY CONCEPTMICROPROCESSOR,BASICS AND MEMORY CONCEPT
MICROPROCESSOR,BASICS AND MEMORY CONCEPTLakshya Sharma
 
Introduction to-microprocessor
Introduction to-microprocessorIntroduction to-microprocessor
Introduction to-microprocessorankitnav1
 
Introduction to-microprocessors
Introduction to-microprocessorsIntroduction to-microprocessors
Introduction to-microprocessorsVolodymyr Ushenko
 
Introduction to microprocessor
Introduction to microprocessorIntroduction to microprocessor
Introduction to microprocessorSudhir Reddy
 
introduction to microprocessors
introduction to microprocessorsintroduction to microprocessors
introduction to microprocessorsvishi1993
 
Difference between microprocessor and microcontroller
Difference between microprocessor and microcontrollerDifference between microprocessor and microcontroller
Difference between microprocessor and microcontrollerMicrocontrollers Lab
 
Introduction for microprocessor
Introduction for microprocessorIntroduction for microprocessor
Introduction for microprocessorTHANDAIAH PRABU
 
Input Output - Computer Architecture
Input Output - Computer ArchitectureInput Output - Computer Architecture
Input Output - Computer ArchitectureMaruf Abdullah (Rion)
 
Basics of microprocessor
Basics of microprocessorBasics of microprocessor
Basics of microprocessorSunipa Bera
 
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals [ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals naresh1992
 
microprocessor-and-microcontroller
microprocessor-and-microcontrollermicroprocessor-and-microcontroller
microprocessor-and-microcontrollerjhcid
 
Computer programming1
Computer programming1Computer programming1
Computer programming1A A
 

What's hot (20)

microprocessor architecture
microprocessor architecture microprocessor architecture
microprocessor architecture
 
Computer Organization: Introduction to Microprocessor and Microcontroller
Computer Organization: Introduction to Microprocessor and MicrocontrollerComputer Organization: Introduction to Microprocessor and Microcontroller
Computer Organization: Introduction to Microprocessor and Microcontroller
 
Microprocessor & microcontroller
Microprocessor & microcontroller Microprocessor & microcontroller
Microprocessor & microcontroller
 
Microprocessor & Micro-controller
Microprocessor & Micro-controllerMicroprocessor & Micro-controller
Microprocessor & Micro-controller
 
MICROPROCESSOR,BASICS AND MEMORY CONCEPT
MICROPROCESSOR,BASICS AND MEMORY CONCEPTMICROPROCESSOR,BASICS AND MEMORY CONCEPT
MICROPROCESSOR,BASICS AND MEMORY CONCEPT
 
Introduction to-microprocessor
Introduction to-microprocessorIntroduction to-microprocessor
Introduction to-microprocessor
 
microprocessor
microprocessor microprocessor
microprocessor
 
Introduction to-microprocessors
Introduction to-microprocessorsIntroduction to-microprocessors
Introduction to-microprocessors
 
Introduction to microprocessor
Introduction to microprocessorIntroduction to microprocessor
Introduction to microprocessor
 
introduction to microprocessors
introduction to microprocessorsintroduction to microprocessors
introduction to microprocessors
 
Difference between microprocessor and microcontroller
Difference between microprocessor and microcontrollerDifference between microprocessor and microcontroller
Difference between microprocessor and microcontroller
 
Introduction for microprocessor
Introduction for microprocessorIntroduction for microprocessor
Introduction for microprocessor
 
Input Output - Computer Architecture
Input Output - Computer ArchitectureInput Output - Computer Architecture
Input Output - Computer Architecture
 
Basics of microprocessor
Basics of microprocessorBasics of microprocessor
Basics of microprocessor
 
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals [ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals
[ PPT ] NS _ppt 4..ppt microprocesser and microcontroller fundamentals
 
Intro to cao &store program
Intro to cao &store programIntro to cao &store program
Intro to cao &store program
 
1.instrumentation ii
1.instrumentation ii1.instrumentation ii
1.instrumentation ii
 
Arduino
Arduino Arduino
Arduino
 
microprocessor-and-microcontroller
microprocessor-and-microcontrollermicroprocessor-and-microcontroller
microprocessor-and-microcontroller
 
Computer programming1
Computer programming1Computer programming1
Computer programming1
 

Viewers also liked

Eisti - École d'ingénieurs pour DUT 2015-2016
Eisti - École d'ingénieurs pour DUT 2015-2016Eisti - École d'ingénieurs pour DUT 2015-2016
Eisti - École d'ingénieurs pour DUT 2015-2016EISTI
 
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...Microsoft pour les PME
 
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...Microsoft Technet France
 
L1 cs110 jcu-sindoni rev mh 22 07 11
L1 cs110 jcu-sindoni rev mh 22 07 11L1 cs110 jcu-sindoni rev mh 22 07 11
L1 cs110 jcu-sindoni rev mh 22 07 11Giuseppe Sindoni
 
Benefits of Technology
Benefits of TechnologyBenefits of Technology
Benefits of Technologyausdylansprehe
 
Telecommunication
TelecommunicationTelecommunication
Telecommunicationlealynn
 
Reportmajor ppt2003 (hardware)
Reportmajor ppt2003 (hardware)Reportmajor ppt2003 (hardware)
Reportmajor ppt2003 (hardware)lealynn
 
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan NitotNetSecure Day
 
Bio-informatique et applications
Bio-informatique et applicationsBio-informatique et applications
Bio-informatique et applicationsSara SI-MOUSSI
 
MicroComputer Application 1
MicroComputer Application 1MicroComputer Application 1
MicroComputer Application 1sir-smartt
 
Classification of computers
Classification of computersClassification of computers
Classification of computerssunil kumar
 
2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatiqueUsmiste Rosso
 
Future trends in fiber optics
Future trends in fiber opticsFuture trends in fiber optics
Future trends in fiber opticshemanthmcqueen
 
Evolution Of Microprocessor
Evolution Of MicroprocessorEvolution Of Microprocessor
Evolution Of Microprocessorguest3870d0
 

Viewers also liked (20)

Eisti - École d'ingénieurs pour DUT 2015-2016
Eisti - École d'ingénieurs pour DUT 2015-2016Eisti - École d'ingénieurs pour DUT 2015-2016
Eisti - École d'ingénieurs pour DUT 2015-2016
 
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...
Peut-on survivre à une attaque informatique ? Les règles d’or de la sécurité ...
 
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...
Extension de votre de votre infrastructure vers Microsoft Azure avec ExpressR...
 
L1 cs110 jcu-sindoni rev mh 22 07 11
L1 cs110 jcu-sindoni rev mh 22 07 11L1 cs110 jcu-sindoni rev mh 22 07 11
L1 cs110 jcu-sindoni rev mh 22 07 11
 
Benefits of Technology
Benefits of TechnologyBenefits of Technology
Benefits of Technology
 
Le concept de réseaux
Le concept de réseauxLe concept de réseaux
Le concept de réseaux
 
Telecommunication
TelecommunicationTelecommunication
Telecommunication
 
Reportmajor ppt2003 (hardware)
Reportmajor ppt2003 (hardware)Reportmajor ppt2003 (hardware)
Reportmajor ppt2003 (hardware)
 
Popular Microcomputer Software[1]
Popular  Microcomputer  Software[1]Popular  Microcomputer  Software[1]
Popular Microcomputer Software[1]
 
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot
#NSD16 - ré-inventer une informatique au service de l'homme - Tristan Nitot
 
Bio-informatique et applications
Bio-informatique et applicationsBio-informatique et applications
Bio-informatique et applications
 
MicroComputer Application 1
MicroComputer Application 1MicroComputer Application 1
MicroComputer Application 1
 
Classification of computers
Classification of computersClassification of computers
Classification of computers
 
2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique2015 07 14_presentation-pfe-gestion-parc-informatique
2015 07 14_presentation-pfe-gestion-parc-informatique
 
Future trends in fiber optics
Future trends in fiber opticsFuture trends in fiber optics
Future trends in fiber optics
 
Evolution Of Microprocessor
Evolution Of MicroprocessorEvolution Of Microprocessor
Evolution Of Microprocessor
 
Types of Computer
Types of ComputerTypes of Computer
Types of Computer
 
WiMAX
WiMAXWiMAX
WiMAX
 
Classification of computers
Classification of computersClassification of computers
Classification of computers
 
WiMAX Basics
WiMAX Basics WiMAX Basics
WiMAX Basics
 

Similar to Chapter1a

VTU University Micro Controllers-06ES42 lecturer Notes
VTU University Micro Controllers-06ES42 lecturer NotesVTU University Micro Controllers-06ES42 lecturer Notes
VTU University Micro Controllers-06ES42 lecturer Notes24x7house
 
Assembly chapter One.pptx
Assembly chapter One.pptxAssembly chapter One.pptx
Assembly chapter One.pptxssuserb78e291
 
1 Intro To Micro P
1 Intro To Micro P1 Intro To Micro P
1 Intro To Micro Pikinfad
 
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdf
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdfPlease send the answers to my email. Mirre06@hotmail.comSomeone se.pdf
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdfebrahimbadushata00
 
Memory & the fetch decode-execute cycle
Memory & the fetch decode-execute cycleMemory & the fetch decode-execute cycle
Memory & the fetch decode-execute cyclechantellemallia
 
ITBIS105 6
ITBIS105 6ITBIS105 6
ITBIS105 6Suad 00
 
Microprocessor fundamentals
Microprocessor fundamentalsMicroprocessor fundamentals
Microprocessor fundamentalsJLoknathDora
 
Pre requisite of COA- for Micro controller Embedded systems
Pre requisite of COA- for Micro controller Embedded systemsPre requisite of COA- for Micro controller Embedded systems
Pre requisite of COA- for Micro controller Embedded systemsSMITA V MORE
 
Lecture 1 introduction to_computersb(2)
Lecture 1 introduction to_computersb(2)Lecture 1 introduction to_computersb(2)
Lecture 1 introduction to_computersb(2)xterribad
 
System Programming- Unit I
System Programming- Unit ISystem Programming- Unit I
System Programming- Unit ISaranya1702
 
Hardware and software of computer
Hardware and software of computerHardware and software of computer
Hardware and software of computerSurath Khadka
 
Computer System Architecture - Computer System Architecture
Computer System Architecture - Computer System ArchitectureComputer System Architecture - Computer System Architecture
Computer System Architecture - Computer System Architecturessusera1e32a1
 
Hardware Components2 - Anti-Dote Series
Hardware Components2 - Anti-Dote SeriesHardware Components2 - Anti-Dote Series
Hardware Components2 - Anti-Dote SeriesEnimil Kweku Boateng
 
Computer basics and i.o devices
Computer basics and i.o devicesComputer basics and i.o devices
Computer basics and i.o deviceskitturashmikittu
 
Introduction To Computer and Java
Introduction To Computer and JavaIntroduction To Computer and Java
Introduction To Computer and JavaPRN USM
 

Similar to Chapter1a (20)

VTU University Micro Controllers-06ES42 lecturer Notes
VTU University Micro Controllers-06ES42 lecturer NotesVTU University Micro Controllers-06ES42 lecturer Notes
VTU University Micro Controllers-06ES42 lecturer Notes
 
Assembly chapter One.pptx
Assembly chapter One.pptxAssembly chapter One.pptx
Assembly chapter One.pptx
 
1 Intro To Micro P
1 Intro To Micro P1 Intro To Micro P
1 Intro To Micro P
 
EEE226a.ppt
EEE226a.pptEEE226a.ppt
EEE226a.ppt
 
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdf
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdfPlease send the answers to my email. Mirre06@hotmail.comSomeone se.pdf
Please send the answers to my email. Mirre06@hotmail.comSomeone se.pdf
 
Memory & the fetch decode-execute cycle
Memory & the fetch decode-execute cycleMemory & the fetch decode-execute cycle
Memory & the fetch decode-execute cycle
 
CISY 105 Chapter 1
CISY 105 Chapter 1CISY 105 Chapter 1
CISY 105 Chapter 1
 
Lecture 1
Lecture 1Lecture 1
Lecture 1
 
ITBIS105 6
ITBIS105 6ITBIS105 6
ITBIS105 6
 
Microprocessor fundamentals
Microprocessor fundamentalsMicroprocessor fundamentals
Microprocessor fundamentals
 
Pre requisite of COA- for Micro controller Embedded systems
Pre requisite of COA- for Micro controller Embedded systemsPre requisite of COA- for Micro controller Embedded systems
Pre requisite of COA- for Micro controller Embedded systems
 
Lecture 1 introduction to_computersb(2)
Lecture 1 introduction to_computersb(2)Lecture 1 introduction to_computersb(2)
Lecture 1 introduction to_computersb(2)
 
System Programming- Unit I
System Programming- Unit ISystem Programming- Unit I
System Programming- Unit I
 
Hardware and software of computer
Hardware and software of computerHardware and software of computer
Hardware and software of computer
 
unit-i.pdf
unit-i.pdfunit-i.pdf
unit-i.pdf
 
Computer System Architecture - Computer System Architecture
Computer System Architecture - Computer System ArchitectureComputer System Architecture - Computer System Architecture
Computer System Architecture - Computer System Architecture
 
Running a Program.pdf
Running a Program.pdfRunning a Program.pdf
Running a Program.pdf
 
Hardware Components2 - Anti-Dote Series
Hardware Components2 - Anti-Dote SeriesHardware Components2 - Anti-Dote Series
Hardware Components2 - Anti-Dote Series
 
Computer basics and i.o devices
Computer basics and i.o devicesComputer basics and i.o devices
Computer basics and i.o devices
 
Introduction To Computer and Java
Introduction To Computer and JavaIntroduction To Computer and Java
Introduction To Computer and Java
 

More from MaeEstherMaguadMaralit (15)

Chapter2c
Chapter2cChapter2c
Chapter2c
 
Chapter2b
Chapter2bChapter2b
Chapter2b
 
Chapter2a
Chapter2aChapter2a
Chapter2a
 
Chapter1c
Chapter1cChapter1c
Chapter1c
 
Chapter1b
Chapter1bChapter1b
Chapter1b
 
Chapter2d
Chapter2dChapter2d
Chapter2d
 
linked list (CMSC 123)
linked list (CMSC 123)linked list (CMSC 123)
linked list (CMSC 123)
 
HTTP
HTTPHTTP
HTTP
 
The lovedare
The lovedareThe lovedare
The lovedare
 
Cmsc 100 (web content)
Cmsc 100  (web content)Cmsc 100  (web content)
Cmsc 100 (web content)
 
Cmsc 100 (web forms)
Cmsc 100 (web forms)Cmsc 100 (web forms)
Cmsc 100 (web forms)
 
Cmsc 100 xhtml and css
Cmsc 100 xhtml and cssCmsc 100 xhtml and css
Cmsc 100 xhtml and css
 
Cmsc 100 (web programming in a nutshell)
Cmsc 100 (web programming in a nutshell)Cmsc 100 (web programming in a nutshell)
Cmsc 100 (web programming in a nutshell)
 
Chapter2a
Chapter2aChapter2a
Chapter2a
 
Chapter1b
Chapter1bChapter1b
Chapter1b
 

Recently uploaded

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Mark Goldstein
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integrationmarketing932765
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFMichael Gough
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...itnewsafrica
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Farhan Tariq
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsYoss Cohen
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...BookNet Canada
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...Karmanjay Verma
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Jeffrey Haguewood
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Kaya Weers
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesManik S Magar
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Deliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceDeliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceOpsTree solutions
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfNeo4j
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality AssuranceInflectra
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentPim van der Noll
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfpanagenda
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessWSO2
 
Laying the Data Foundations for Artificial Intelligence!
Laying the Data Foundations for Artificial Intelligence!Laying the Data Foundations for Artificial Intelligence!
Laying the Data Foundations for Artificial Intelligence!Memoori
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Karmanjay Verma
 

Recently uploaded (20)

Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
Arizona Broadband Policy Past, Present, and Future Presentation 3/25/24
 
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS:  6 Ways to Automate Your Data IntegrationBridging Between CAD & GIS:  6 Ways to Automate Your Data Integration
Bridging Between CAD & GIS: 6 Ways to Automate Your Data Integration
 
All These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDFAll These Sophisticated Attacks, Can We Really Detect Them - PDF
All These Sophisticated Attacks, Can We Really Detect Them - PDF
 
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...Abdul Kader Baba- Managing Cybersecurity Risks  and Compliance Requirements i...
Abdul Kader Baba- Managing Cybersecurity Risks and Compliance Requirements i...
 
Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...Genislab builds better products and faster go-to-market with Lean project man...
Genislab builds better products and faster go-to-market with Lean project man...
 
Infrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platformsInfrared simulation and processing on Nvidia platforms
Infrared simulation and processing on Nvidia platforms
 
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
Transcript: New from BookNet Canada for 2024: BNC SalesData and LibraryData -...
 
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...React JS; all concepts. Contains React Features, JSX, functional & Class comp...
React JS; all concepts. Contains React Features, JSX, functional & Class comp...
 
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
Email Marketing Automation for Bonterra Impact Management (fka Social Solutio...
 
Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)Design pattern talk by Kaya Weers - 2024 (v2)
Design pattern talk by Kaya Weers - 2024 (v2)
 
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotesMuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
MuleSoft Online Meetup Group - B2B Crash Course: Release SparkNotes
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Deliver Latency Free Customer Experience
Deliver Latency Free Customer ExperienceDeliver Latency Free Customer Experience
Deliver Latency Free Customer Experience
 
Connecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdfConnecting the Dots for Information Discovery.pdf
Connecting the Dots for Information Discovery.pdf
 
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance[Webinar] SpiraTest - Setting New Standards in Quality Assurance
[Webinar] SpiraTest - Setting New Standards in Quality Assurance
 
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native developmentEmixa Mendix Meetup 11 April 2024 about Mendix Native development
Emixa Mendix Meetup 11 April 2024 about Mendix Native development
 
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdfSo einfach geht modernes Roaming fuer Notes und Nomad.pdf
So einfach geht modernes Roaming fuer Notes und Nomad.pdf
 
Accelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with PlatformlessAccelerating Enterprise Software Engineering with Platformless
Accelerating Enterprise Software Engineering with Platformless
 
Laying the Data Foundations for Artificial Intelligence!
Laying the Data Foundations for Artificial Intelligence!Laying the Data Foundations for Artificial Intelligence!
Laying the Data Foundations for Artificial Intelligence!
 
Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#Microservices, Docker deploy and Microservices source code in C#
Microservices, Docker deploy and Microservices source code in C#
 

Chapter1a

  • 2. 1. Basic Organization of a Microcomputer 2. Von-Neumann’s Simple Computer 3. The Fetch-Decode-Execute Cycle Outline
  • 3. At the end of the discussion, we should be able to  describe the basic organization of microprocessor-based systems and the Von Neumann system,  discuss how a program instruction is executed. Objectives
  • 4. The Basic Organization of a Microcomputer MEMORY INPUT OUTPUT ALU CPU CU REGISTER FILE
  • 5. The Basic Organization of a Microcomputer Input and Output  the I/O devices connected to the bus  bus –the collection of the computer's electrical lines where signals pass through  the bus is generally divided into four types: the data, address, control, and power bus INPUT OUTPUT
  • 6. The Basic Organization of a Microcomputer CPU  the Central Processing Unit; that is, the computer's processor  composed of the CU, ALU, and Register File  reads one instruction from memory at a time and executes it ALU CPU CU REGISTER FILE
  • 7. The Basic Organization of a Microcomputer CU  the Control Unit  the part of the CPU that sends control signals to the different parts of the system through the control bus
  • 8. The Basic Organization of a Microcomputer ALU  the Arithmetic and Logic Unit  a logic circuit in the CPU that is responsible for performing mathematical and logical operations.
  • 9. The Basic Organization of a Microcomputer Register File  the collection of registers inside the CPU  a register – a set of flip-flops treated as a single unit  flip-flop – a digital logic circuit capable of storing a single bit  there are several registers in a computer system, some are for general purposes while others are called special-purpose registers
  • 10. The Basic Organization of a Microcomputer Memory  the program-addressable storage from which instructions and other data may be loaded for subsequent execution or processing  typically the memory is organized in chunks of 8 bits (called a byte)  each chunk (byte) has an address MEMORY
  • 11. Von Neumann’s Simple Computer MEMORY INPUT OUTPUT ALU CPU CU PC IR MAR MBR A
  • 12. Von Neumann’s Simple Computer PC  Program Counter – contains the address of the next instruction to be executed. IR  Instruction Register – contains the current instruction word.
  • 13. Von Neumann’s Simple Computer MAR  Memory Address Register –contains the memory address of data needed for an instruction's execution. MBR  Memory Buffer Register –contains data needed for an instruction's execution.
  • 14. Von Neumann’s Simple Computer A  Accumulator –the register used as temporary storage for data or for the result of arithmetic or logical operations.
  • 15. The Fetch-Decode-Execute Cycle 1. Get the instruction from the memory using the address contained in PC. 2. Put the instruction into IR. 3. Increment the value in PC. 4. Decode the value in IR. 5. Execute the operation specified in the instruction. 6. Repeat step number 1.
  • 16. Instructions  Each instruction is stored in memory as a bunch of bits.  The CPU decodes the bits to determine what should happen.  For example, the instruction to add 2 numbers might look like this: 10100110101001101010011010100110  Instructions are from a language called machine language.
  • 17. Machine Code  An executable program is a sequence of these simple instructions.  The sequence is stored in memory.  The CPU processes the simple instructions sequentially.  Some instructions can tell the CPU to jump to a new place in memory to get the next instruction.
  • 18. Sample Program # Instruction 1. set memory[801] to hold 00000001 2. set memory[802] to hold 00000000 3. if memory[802] = 10 jump to instruction #8 4. increment memory[802] 5. set memory[803] to 2 times memory[801] 6. put memory[803] in to memory[801] 7. jump to instruction #3 8. print memory[801]
  • 19. Illustration CPU Address MEMORY 0 Instruction # 1 1 Instruction # 2 2 Instruction # 3 3 Instruction # 4 . . . . . . . . . 801 802 803
  • 20. Human vs. Machine Programs  The computer can only understand the bits (the encoded program) = Machine Language  Humans don’t like to deal with bits, so they developed English-like abbreviations for programs. = Assembly Language
  • 21. I. INTRODUCTION The Rationale of Using Low-level Language
  • 22. Objectives At the end of this section, we should be able to:  Identify different levels of programming languages  Discuss the rationale of using low-level languages
  • 23. Hierarchy of Programming Languages Machine Language  This is what the computer actually sees and deals with. Every command the computer sees is given as a number or sequence of numbers.
  • 24. Hierarchy of Programming Languages Assembly Language  the same as machine language, except the command numbers have been replaced by letter sequences which are easier to memorize.  middle-level language  maps human-readable mnemonics to machine instructions  allows machine-level programming without writing in machine language
  • 25. Hierarchy of Programming Languages Assembly Language  For example, an x86 processor can execute the following binary instruction as expressed in machine language: Binary: 10110000 01100001 Hexadecimal: B0 61  The equivalent assembly language representation is easier to remember: MOV AL, #61h
  • 26. Hierarchy of Programming Languages High-Level Language  High-level languages are there to make programming easier.  Assembly language requires you to work with the machine itself. High-level languages allow you to describe the program in a more natural language.  A single command in a high-level language usually is equivalent to several commands in an assembly language.
  • 27. Reasons for not using Assembly  Development time: it takes much longer to develop in assembly  Maintainability: unstructured  Portability: platform-dependent
  • 28. Reasons for using Assembly  To understand how CPUs and compilers work  Developing compilers, debuggers and other development tools  Hardware drivers, system code and low-level tasks such as bootloaders  Embedded systems  Reverse Engineering  Address critical performance issues (Optimizing for speed or space)
  • 29. The Rationale of Using Low-level Language  By gaining a deeper understanding of how computers work at a lower level, one can often be more productive developing software in higher level language such as C.  Learning to program in assembly language is an excellent way to achieve this goal. (Ref: Paul A. Carter, PC Assembly Language, July 23 2006)