Chapter 11 Instruction Sets: Addressing Modes and Formats Gabriel Baron Sydney Chow.

Slides:



Advertisements
Similar presentations
Instruction Set Design
Advertisements

INSTRUCTION SET ARCHITECTURES
There are two types of addressing schemes:
Computer Organization and Architecture
Computer Organization and Architecture
Computer Organization and Architecture
Chapter 11 Instruction Sets
The Central Processing Unit Instruction Sets: Addressing Modes and Formats.
Abdullah, Ibrahim Ali, Javeed Budhram, Dharmendra Galiana, Thomas Monegro, Wesley Silva, Frank.
Mod-Mod Pengalamat Segera (Immediate) Terus (Direct)
CH11 Instruction Sets: Addressing Modes and Formats
Pentium Addressing Modes
Unit -II CPU Organization By- Mr. S. S. Hire. CPU organization.
Chapter 11 Instruction Sets: Addressing Modes and Formats HW: 11.4, 5, 13, 16 (Due 11/15)
Processor Organization and Architecture Module III.
Operand Addressing and Instruction Representation
Machine Instruction Characteristics
Instruction Set Architecture
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 15 & 16 Stacks, Endianness Addressing Modes Course Instructor: Engr. Aisha Danish.
L/O/G/O The Instruction Set Chapter 9 CS.216 Computer Architecture and Organization.
Homework Problems 1. M1 runs the program P in 1.4 * 9 * ns or ns M2 runs the program P in 1.6*9800*10ns or ns Hence M2 is faster by.
Chapter 5 A Closer Look at Instruction Set Architectures.
Chapter 5 A Closer Look at Instruction Set Architectures.
Module 3 Instruction Set Architecture (ISA): ISA Level Elements of Instructions Instructions Types Number of Addresses Registers Types of Operands.
Instruction Sets: Characteristics Functions Addressing Modes Formats Chapter7:
COMPUTER ARCHITECURE INSTRUCTION SET ARCHITECTURE.
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 19 & 20 Instruction Formats PDP-8,PDP-10,PDP-11 & VAX Course Instructor: Engr. Aisha Danish.
Computer Organization
Chapter 11 Instruction Sets: Addressing Modes and Formats
ECEG-3202 Computer Architecture and Organization Chapter 6 Instruction Sets: Addressing Modes and Formats.
Instruction Sets: Addressing modes and Formats Group #4  Eloy Reyes  Rafael Arevalo  Julio Hernandez  Humood Aljassar Computer Design EEL 4709c Prof:
COMPUTER ORGANIZATION AND ASSEMBLY LANGUAGE Lecture 21 & 22 Processor Organization Register Organization Course Instructor: Engr. Aisha Danish.
Lecture 5 A Closer Look at Instruction Set Architectures Lecture Duration: 2 Hours.
Addressing Modes and Formats
WEEK 3 I/O Port Programming ET2640 Microprocessors and Microcontrollers.
EKT 422/4 COMPUTER ARCHITECTURE SoME-0809-I 1 Chapter 3a Instruction Sets: Characteristics and Functions.
MicroProcessors Lec. 3 Dr. Tamer Samy Gaafar. Course Web Page
1 ADDRESSING MODES Addressing Modes: * Specifies a rule for interpreting or modifying the address field of the instruction (before the operand is actually.
Computer Architecture
EEL 4709C Prof. Watson Herman Group 4 Ali Alshamma, Derek Montgomery, David Ortiz 11/11/2008.
İnformasiya texnologiyaları kafedrası Mövzu № 7. Ünvanlaşdırma üsulları. (Ünvanlaşdırma rejimləri. Bilavasitə ünvanlaşdırma. Birbaşa ünvanlaşdırma. Registrli.
Displacement (Indexed) Stack
Instruction sets : Addressing modes and Formats
William Stallings Computer Organization and Architecture 6th Edition
Immediate Addressing Mode
Chapter 11 Instruction Sets
A Closer Look at Instruction Set Architectures
Alvaro Mauricio Peña Dariusz Niworowski Frank Rodriguez
A Closer Look at Instruction Set Architectures
Microcomputer Programming
William Stallings Computer Organization and Architecture 8th Edition
Asst. Prof. Dr. Gazi Erkan BOSTANCI Slides are mainly based on
Processor Organization and Architecture
Central Processing Unit
Processor Organization and Architecture
ECEG-3202 Computer Architecture and Organization
Computer Architecture
Classification of instructions
William Stallings Computer Organization and Architecture 8 th Edition Chapter 11 Instruction Sets: Addressing Modes and Formats.
Asst. Prof. Dr. Gazi Erkan BOSTANCI Slides are mainly based on
Presentation transcript:

Chapter 11 Instruction Sets: Addressing Modes and Formats Gabriel Baron Sydney Chow

 Immediate  Direct  Indirect  Register  Register Indirect  Displacement (Indexed)  Stack

 Simplest form of addressing  Operand value is present in instruction  Operand = A  e.g. ADD 5  Add 5 to contents of accumulator  5 is operand  Advantages  No memory reference to fetch data  Fast  Disadvantages  Size restriction to the size of address field

OperandOpcode Instruction Example: LDAA Opcode = 86 Operand = 05

 Simple form of addressing  Address field contains address of operand  Effective address (EA) = address field (A)  e.g. ADD A  Add contents of cell A to accumulator  Look in memory at address A for operand  Single memory reference to access data  No additional calculations to work out effective address  Disadvantage  Limited address space

Address AOpcode Instruction Memory Operand Example: LDAA Opcode = 96 A= E5 Address A = 00 E5

 Memory cell pointed to by address field that contains the address of (pointer to) the operand  EA = (A) [parentheses means contents of]  Look in A, find address (A) and look there for operand  e.g. ADD (A)  Add contents of cell pointed to by contents of A to accumulator  Advantages  For word length N, space 2 n now available  Large address space

 Disadvantages  Requires two memory references to fetch operand  One to get its address  Second to get its value  Slower  Multiple memory accesses to find operand

Address AOpcode Instruction Memory Operand Pointer to operand Example: Opcode = XX A = 11C5 11C5 = Operand

 Address field refers to a register rather than a main memory address  EA = R  Advantages  Very small address field needed  Shorter instructions  Faster instruction fetch  No memory reference required  Very fast execution  Multiple registers helps performance  Requires good assembly programming or compiler writing

 Disadvantage  Very limited address space

Register Address ROpcode Instruction Registers Operand Example: Opcode = XX Register R = Operand

 EA = (R)  Operand is in memory cell pointed to by contents of register R  Advantages  For word length N, space 2 n now available  Large address space  One fewer memory access than indirect addressing  Disadvantages  Requires two memory references to fetch operand  Multiple memory accesses to find operand  Slower

Register Address ROpcode Instruction Memory Operand Pointer to Operand Registers

 Combines the capabilities of direct addressing and register indirect addressing  EA = A + (R)  Advantages  Flexibility  Disadvantages  Complexity  Requirements  Address field hold two values  A = base value  R = register that holds displacement  or vice versa

Register ROpcode Instruction Memory Operand Pointer to Operand Registers Address A +

 Linear array of locations (last-in-first-out)  Operand is (implicitly) on top of stack  EA = top of stack  Advantages  No memory reference  Disadvantage  Limited applicability  e.g.  ADDPop top two items from stack and add

 The memory is divided into portions that maybe addressed by a single index register without changing a 16-bit segment selector.  A segment is always 64 KB in size using a 16-bit offset.  The X86 Addressing modes are as follows:  Register  Memory  Displacement Only  Indirect  Indexed  Based Indexed

 Layout of bits in an instruction  Includes opcode  Includes (implicit or explicit) operand(s)  Usually more than one instruction format in an instruction set

 The most basic design issue to be faced  Affected by and affects:  Memory size  Memory organization  Bus structure  CPU complexity  CPU speed  Trade off between powerful instruction repertoire and saving space

 Number of addressing modes  Sometimes an addressing mode can be indicated implicitly  i.e. certain opcodes might always call for indexing, so the addressing modes must be explicit and one or more mode bits will be needed  Number of operands  Fewer addresses can make for longer, more awkward programs  Register versus memory  The more that registers can be used or operand references, the fewer bits are needed

 Number of register sets  These registers can be used to store data and can be used to store addresses for displacement addressing  Address range  For addresses that reference memory, the range of addresses that can be referenced is related to the number of address bits  Address granularity  In a system with 16- or 32- bit words, an address can reference a word or byte at the designer’s choice

 One of the simplest instruction designs for a general purpose  Each memory reference consist of 7 bits plus two 1-bit modifiers  The memory is divided into fixed-length pages of 2 7 = 128 words  Supports indirect addressing, displacement addressing and indexing

 Designed to be a large-scale time-shared system, with an emphasis on making the system program easy  Some design principals  Orthogonality  Two variables are independent of each other  Completeness  Each arithmetic data type should have a complete and identical set of operations  Direct addressing  Base plus displacement addressing, usually avoided in favor of direct addressing

 Provides a powerful and flexible instruction set within the constraints of a 16-bit microcomputer  Employs a set of eight 16-bit general-purpose registers  Increases hardware cost and programming complexity because of addressing capability  More efficient or compact programs can be deeloped

 Begins with a 1-byte opcode  On hexadecimal codes  Actual opcode being specified in the second byte  Remainder of instructions consist of up to six operand specifiers  Minimum 1-byte format which leftmost 4 bits are the address mode specifier  Provides for a wide variety of operations and addressing modes

 Types of addressing modes are:  Immediate, Direct, Indirect, Register, Register-Indirect, Displacement, Stack …  Some of the Key Design issues for instruction formats are:  Instruction length, allocation of bits, PDP-8, PDP-10, PDP-11, VAX.

1. What are four addressing modes? Ans: Immediate, Direct, Indirect, Stack. 2. What is simplest addressing mode? Ans: Immediate Addressing Mode. 3. What is the disadvantage of the direct addressing mode? Ans: Limited Address Space. 4. What is indirect addressing? Ans: The operand is stored in an address, which is stored in an memory cell. 5. Which addressing mode refers to a register instead of a memory address? Ans: Register Addressing Mode

6. How does the register indirect addressing mode access the operand? Ans: The operand is store in an address that is pointed to by a memory cell. 7. What two values does the address field hold in the Displacement Addressing mode? Ans: Base value, Register value 8. What order is data sorted in the stack addressing mode? Ans: Last in First Out 9. What are four X86 Addressing Modes? Ans: Register, memory, displacement, indirect.

10. Which instruction design is the simplest for general purpose? Ans: PDP-8

 X86 Addressing Modes  2.html#HEADING html#HEADING2-1 