Address Modes effective address
|
|
- Ira Lindsey
- 5 years ago
- Views:
Transcription
1 Address Modes The MARIE supports only three addressing modes: immediate, direct, and indirect. We are now going to discuss addressing modes in general. Most computers support quite a few of these modes. We shall discuss both direct and indirect addressing. We begin with the idea of an effective address, or EA. This is the address in memory of the actual operand (variable) used in the operation. We use the term EA loosely when it is not strictly appropriate, as in the following three addressing modes, none of which reference memory at all. Immediate mode addressing Register addressing Stack addressing. We begin by jumping ahead and discussing direct addressing. We then use this to define and illustrate the three addressing modes mentioned above.
2 Direct and Immediate Addressing The MARIE supports a Add instruction, with opcode 0011 = 0x3 It also supports Add Indirect, with opcode 1011 = 0xB. The expanded version supports Add Immediate, with opcode 1110 = 0xE. Consider the following memory map (Figure 5.3 in the textbook). Let the AC = 50. Let X have the value 0x800 and assume the table uses hexadecimal addresses. Add X 0x3800 // Go to address 800 and add its contents to the AC. // The value of the AC is now 950. AC (AC) + M[X] AddM X 0xE800 // Add the value 800 to the AC. AC (AC) + X 98% of Load Immediate and Add Immediate use the values 1, 0, and + 1.
3 Stack and Register Addressing In stack addressing, the operands are on the stack. We illustrate. Push A // Direct addressing. A is the address of the value to be pushed. Push B // Direct addressing. B is the address of the value to be pushed. Add // Stack addressing. Values to be added are on the stack. Pop C // Again, this is direct addressing. Place result in address C. In register addressing, the operands are in registers. We illustrate this mode using notation for a Load Store RISC machine with two registers: R1 and R2. Load R1, A // Direct addressing. A is the address of the value to be // loaded into register R1. Use of a register does not change this. Load R2, B // Again direct addressing, even if the value goes into a register. Add R1, R2 // Register addressing. Values to be added are in the registers. Store R1, C // Again, this is direct addressing.
4 Calculation of Effective Address We now step back and think about how to calculate an effective address. Having done this, we return to direct addressing and see how it fits in. Again, we are speaking about computers in general. This is not an issue for the MARIE. We begin with the format of a generic instruction referencing memory Opcode Register Address Mode Address Fields Flags Field In general, the only parts of the instruction that are used in computing the EA are the Address Field this contains an address, which may be modified. the Mode Flags these indicate how to modify the given address in order to compute the EA (Effective Address). the Register Fields used in indexed addressing and in register indirect. The order of the fields shown here is generic and probably does not apply to all computers.
5 No Addressing We first handle the very simple case in which the operator does not use an address. The MARIE has several such instructions: Input, Output, Halt, and Clear. The opcode for Halt is binary 0000 or hexadecimal 0. The machine code for a halt would be written as 0000, as it needs 4 hexadecimal digits. Question: What is the address associated with the machine code 0000? Answer: There is none. The instruction does not use an address. Question: What is the address associated with the machine code 0777? Answer: Note: There is none. The instruction does not use an address. One wonders how the last three hexadecimal digits were set, but they are ignored. One might view this as a variant of immediate mode addressing, but such an approach is probably not helpful.
6 Direct and Indirect Addressing Opcode Registers Mode Flags Address Field In each of direct and indirect addressing, the computation is simple: Just copy the address field itself. In direct addressing, the address field contains the address of the argument. In indirect addressing, the address field contains the address of a pointer to the argument. Put another way, the contents of the memory indicated by the address field contain the address of the argument.
7 Direct and Indirect Addressing (Example) Consider again the memory map taken from the textbook. Let X refer to the value 0x800. Load X this loads the AC from address 0x800. The value 900 goes into the AC. EA = X AC M[X] Load Indirect X Go to address 0x800. Its contents are 0x900. Load the AC from address 0x900. The value 1000 goes into the AC. EA = M[X] AC M[ M[X] ] NOTE: The complexity of notation such as AC M[ M[X] ] is one reason we use the Effective Address idea. Break the address computation into small steps.
8 Register and Register Indirect Addressing Opcode Registers Mode Flags Address Field In each of register and register indirect addressing, the address field is ignored. Conventionally, it is set at all zeroes. In register addressing, a general purpose register contains the argument. In register indirect addressing, a general purpose register contains the address of the argument. The MARIE does not support either addressing mode.
9 Register and Register Indirect Addressing (Example) Consider again the memory map taken from the textbook. We assume the MARIE has an AC and a register R1. Assume (R1) = 0x800. Register addressing: Load AC, R1 The accumulator is loaded from the register. AC = 0x800 AC (R1) Register Indirect addressing The accumulator is loaded from the address pointed to by the register. Here AC = 0x900. AC M[ (R1) ], the memory addresses by the contents of R1.
10 Indexed Addressing This is used to support array addressing in all computers. Languages such as C and C++ implement this directly using zero based arrays. The contents of the register are added to the address field to form the effective address. EA = (Address Field) + (Register)
11 Indexed Addressing (Example) Consider again the memory map taken from the textbook. We assume the MARIE has an AC and one registers: R1. Use R1 in the address calculations. Suppose X = 0x200. Load X[R1] // Syntax is made up to look reasonable. AC is loaded. EA = X + (R1) = 0x x800 = 0xA00. AC M[0xA00], whatever that is.
12 Another Indexed Addressing Example Suppose now that X refers to address 0x800 and that register R1 contains a small number, say (R1) = 0x02. Consider the instruction Load X[R1] The effective address is EA = X + (R1) = 0x x02 = 0x802. This can be viewed as X[2] where X is a zero based array. Its memory layout appears similar to the figure below. Memory Map 0x800 0x801 0x802 0x803 X[0] X[1] X[2] X[3]
13 Indexed Indirect Addressing This is a combination of both modes. Question: Which is done first. Preindexed indirect. The indexing is done first. We have an array of pointers. Postindexed indirect. The indirect is done first. We have a pointer to an array.
14 Sample Problem (from CPSC 5155) This question references the following memory map. Address Contents If the symbol X stands for address 12 and (%R6) == 1, what is the effective address for a) STR %R2, X direct addressing b) STR %R2, *X indirect addressing c) STR %R2, X, 6 indexed by register %R6. d) STR %R2, *X, 6 pre-indexed indirect, indexed by %R6. Analysis: First a few comments on the problem and then we start. 1. Question: Are the addresses decimal or hexadecimal? Answer: This is ambiguous, but not important. We need to compute (12 1), which is 11 in each of decimal and hexadecimal. 2. Question: What does STR do? Answer: We don t care. We just want the address.
15 Sample Problem (Page 2) Address Contents The symbol X stands for address 12 and (%R6) == 1, a) STR %R2, X direct addressing The label X refers to address 12. In direct addressing that is the address. EA = 12. PLEASE NOTE: The contents of address 12 are 4; M[12] == 4. In a higher level language, we would say X is 4, because the memory location contains that value. In this context, we say X references the address 12. b) STR %R2, *X indirect addressing The label X refers to address 12. For indirect addressing, the address is M[X], here M[12] or 4. Note that contents of address 4 are not specified. However, EA = 4.
16 Sample Problem (Page 3) Address Contents The symbol X stands for address 12 and (%R6) == 1, c) STR %R2, X, 6 indexed by register %R6. The effective address is X + (%R6), which is 12 + ( 1) or 12 1 = 11. EA = 11. NOTE: Do not add the contents of the address associated with X. This would be another addressing mode. d) STR %R2, *X, 6 pre-indexed indirect, indexed by %R6. The effective address is M[X + (%R6)]. Do the indexing first. X + (%R6) is 12 + ( 1) = 12 1 = 11. The effective address is M[11] = 7. EA = 7.
Problem with Scanning an Infix Expression
Operator Notation Consider the infix expression (X Y) + (W U), with parentheses added to make the evaluation order perfectly obvious. This is an arithmetic expression written in standard form, called infix
More informationThe MARIE Architecture
The MARIE Machine Architecture that is Really Intuitive and Easy. We now define the ISA (Instruction Set Architecture) of the MARIE. This forms the functional specifications for the CPU. Basic specifications
More informationWilliam Stallings Computer Organization and Architecture 8 th Edition. Chapter 11 Instruction Sets: Addressing Modes and Formats
William Stallings Computer Organization and Architecture 8 th Edition Chapter 11 Instruction Sets: Addressing Modes and Formats Addressing Modes Immediate Direct Indirect Register Register Indirect Displacement
More informationComputer Architecture and Organization. Instruction Sets: Addressing Modes and Formats
Computer Architecture and Organization Instruction Sets: Addressing Modes and Formats Addressing Modes Immediate Direct Indirect Register Register Indirect Displacement (Indexed) Stack Immediate Addressing
More informationAddressing Modes. Immediate Direct Indirect Register Register Indirect Displacement (Indexed) Stack
Addressing Modes Addressing Modes and Formats Nizamettin AYDIN naydin@yildiz.edu.tr http://www.yildiz.edu.tr/~naydin http://akademik.bahcesehir.edu.tr/~naydin Immediate Direct Indirect Register Register
More informationChapter 2 Instruction Set Architecture
Chapter 2 Instruction Set Architecture Course Outcome (CO) - CO2 Describe the architecture and organization of computer systems Program Outcome (PO) PO1 Apply knowledge of mathematics, science and engineering
More informationCDA 3103 Computer Organization Homework #7 Solution Set
CDA 3103 Computer Organization Homework #7 Solution Set 1 Problems 1. Write a MARIE assembly program for the following algorithm where the subroutine takes two numbers and returns their product. Your assembly
More informationNotes: The Marie Simulator
The Accumulator (AC) is the register where calculations are performed. To add two numbers together, a) load the first number into the accumulator with a Load instruction b) Add the second number to the
More informationLecture V Toy Hardware and Operating System
2. THE Machine Lecture V Page 1 Lecture V Toy Hardware and Operating System 1. Introduction For use in our OS projects, we introduce THE Machine where THE is an acronym 1 for Toy HardwarE. We also introduce
More informationInstruction Set II. COMP 212 Computer Organization & Architecture. COMP 212 Fall Lecture 7. Instruction Set. Quiz. What is an Instruction Set?
COMP 212 Computer Organization & Architecture Quiz COMP 212 Fall 2008 Lecture 7 Fill in your student number only, do NOT write down your name Open book, but NO calculator, NO discussions, Relax and have
More informationCHAPTER 8: Central Processing Unit (CPU)
CS 224: Computer Organization S.KHABET CHAPTER 8: Central Processing Unit (CPU) Outline Introduction General Register Organization Stack Organization Instruction Formats Addressing Modes 1 Major Components
More information94 CPU (CM8051) Incompatible Instruction ERRATA AND DATASHEET CLARIFICATION V1.0. Leader of Microcontroller Technology A Fabless Semiconductor Company
94 CPU (CM8051) Incompatible Instruction ERRATA AND DATASHEET CLARIFICATION V1.0 Leader of Microcontroller Technology A Fabless Semiconductor Company Document information Info Keywords Abstract Content
More informationCS401 Assembly Language Solved MCQS From Midterm Papers
CS401 Assembly Language Solved MCQS From Midterm Papers May 14,2011 MC100401285 Moaaz.pk@gmail.com MC100401285@gmail.com PSMD01(IEMS) Question No:1 ( Marks: 1 ) - Please choose one The first instruction
More informationDepartment of Computer and Mathematical Sciences. Lab 4: Introduction to MARIE
Department of Computer and Mathematical Sciences CS 3401 Assembly Language 4 Lab 4: Introduction to MARIE Objectives: The main objective of this lab is to get you familiarized with MARIE a simple computer
More informationComputer Organization II CMSC 3833 Lecture 33
Term MARIE Definition Machine Architecture that is Really Intuitive and Easy 4.8.1 The Architecture Figure s Architecture Characteristics: Binary, two s complement Stored program, fixed word length Word
More informationChapter 11. Instruction Sets: Addressing Modes and Formats. Yonsei University
Chapter 11 Instruction Sets: Addressing Modes and Formats Contents Addressing Pentium and PowerPC Addressing Modes Instruction Formats Pentium and PowerPC Instruction Formats 11-2 Common Addressing Techniques
More informationComputer Organization CS 206 T Lec# 2: Instruction Sets
Computer Organization CS 206 T Lec# 2: Instruction Sets Topics What is an instruction set Elements of instruction Instruction Format Instruction types Types of operations Types of operand Addressing mode
More informationThis simulated machine consists of four registers that will be represented in your software with four global variables.
CSCI 4717 Computer Architecture Project 1: Two-Stage Instuction Decoder Due: Monday, September 21, 26 at 11:59 PM What to submit: You will be submitting a text file containing two C functions, fetchnextinstruction()
More informationInstruction-set Design Issues: what is the ML instruction format(s) ML instruction Opcode Dest. Operand Source Operand 1...
Instruction-set Design Issues: what is the format(s) Opcode Dest. Operand Source Operand 1... 1) Which instructions to include: How many? Complexity - simple ADD R1, R2, R3 complex e.g., VAX MATCHC substrlength,
More informationMachine code. Nils Jansen December 12, 2017
Machine code Nils Jansen December 12, 2017 Overview So far Circuits Memory ALU Data Path Fetch-Decode-Execute Cycle Fetch-decode-execute cycle Today Machine code Stack 2 Recap: Execute-phase: Computation
More informationWe briefly explain an instruction cycle now, before proceeding with the details of addressing modes.
Addressing Modes This is an important feature of computers. We start with the known fact that many instructions have to include addresses; the instructions should be short, but addresses tend to be long.
More informationParsing Scheme (+ (* 2 3) 1) * 1
Parsing Scheme + (+ (* 2 3) 1) * 1 2 3 Compiling Scheme frame + frame halt * 1 3 2 3 2 refer 1 apply * refer apply + Compiling Scheme make-return START make-test make-close make-assign make- pair? yes
More informationCS 265. Computer Architecture. Wei Lu, Ph.D., P.Eng.
CS 265 Computer Architecture Wei Lu, Ph.D., P.Eng. Part 5: Processors Our goal: understand basics of processors and CPU understand the architecture of MARIE, a model computer a close look at the instruction
More informationChapter 5. A Closer Look at Instruction Set Architectures
Chapter 5 A Closer Look at Instruction Set Architectures Chapter 5 Objectives Understand the factors involved in instruction set architecture design. Gain familiarity with memory addressing modes. Understand
More informationMARIE: An Introduction to a Simple Computer
MARIE: An Introduction to a Simple Computer 4.2 CPU Basics The computer s CPU fetches, decodes, and executes program instructions. The two principal parts of the CPU are the datapath and the control unit.
More informationInstruction Sets: Characteristics and Functions Addressing Modes
Instruction Sets: Characteristics and Functions Addressing Modes Chapters 10 and 11, William Stallings Computer Organization and Architecture 7 th Edition What is an Instruction Set? The complete collection
More informationCHAPTER 5 A Closer Look at Instruction Set Architectures
CHAPTER 5 A Closer Look at Instruction Set Architectures 5.1 Introduction 5.2 Instruction Formats 5.2.1 Design Decisions for Instruction Sets 5.2.2 Little versus Big Endian 5.2.3 Internal Storage in the
More informationChapter 4. MARIE: An Introduction to a Simple Computer
Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.
More informationVirtual Machine Tutorial
Virtual Machine Tutorial CSA2201 Compiler Techniques Gordon Mangion Virtual Machine A software implementation of a computing environment in which an operating system or program can be installed and run.
More informationCC312: Computer Organization
CC312: Computer Organization Dr. Ahmed Abou EL-Farag Dr. Marwa El-Shenawy 1 Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer
More informationInstruction-set Design Issues: what is the ML instruction format(s) ML instruction Opcode Dest. Operand Source Operand 1...
Instruction-set Design Issues: what is the format(s) Opcode Dest. Operand Source Operand 1... 1) Which instructions to include: How many? Complexity - simple ADD R1, R2, R3 complex e.g., VAX MATCHC substrlength,
More informationUNIT-II. Part-2: CENTRAL PROCESSING UNIT
Page1 UNIT-II Part-2: CENTRAL PROCESSING UNIT Stack Organization Instruction Formats Addressing Modes Data Transfer And Manipulation Program Control Reduced Instruction Set Computer (RISC) Introduction:
More informationadd R1,x add R1,500 add R1,[x] The answer is: all of these instructions implement adding operation on R1 and all of them have two addresses.
6.1 Addressing Modes: introduction Addressing modes are an aspect of the instruction set architecture in most CPU designs. The various addressing mode helps to identify the type of operands in the instruction.
More informationProblem with Scanning an Infix Expression
Operator Notation Consider the infix expression (X Y) + (W U), with parentheses added to make the evaluation order perfectly obvious. This is an arithmetic expression written in standard form, called infix
More informationCHAPTER ASSEMBLY LANGUAGE PROGRAMMING
CHAPTER 2 8051 ASSEMBLY LANGUAGE PROGRAMMING Registers Register are used to store information temporarily: A byte of data to be processed An address pointing to the data to be fetched The vast majority
More informationsarm User Guide Note that a space must appear before the operation field because any word beginning in the first column is a label
sarm User Guide The sarm is program that implements an experimental CPU simulator. It is called experimental because it is not yet complete, and it also incorporates facilities that are not conventionally
More informationChapter. Computer Architecture
Chapter 4 Computer Architecture Figure 4.1 Input device Central processing unit Main memory Output device Bus Data flow Control Figure 4.2 Central processing unit () Status bits ( ) Accumulator ( ) Index
More informationIt is possible to define a number using a character or multiple numbers (see instruction DB) by using a string.
1 od 5 17. 12. 2017 23:53 (https://github.com/schweigi/assembler-simulator) Introduction This simulator provides a simplified assembler syntax (based on NASM (http://www.nasm.us)) and is simulating a x86
More informationVirtual machines. Virtual machines. Abstractions for computers. Abstractions for computers. Virtual machines
1 2 Problems with programming using machine code Difficult to remember instructions Difficult to remember variables Hard to calculate addresses/relocate variables or functions Need to handle instruction
More informationUnderstand the factors involved in instruction set
A Closer Look at Instruction Set Architectures Objectives Understand the factors involved in instruction set architecture design. Look at different instruction formats, operand types, and memory access
More informationOSIAC Read OSIAC 5362 posted on the course website
OSIAC 5362 Read OSIAC 5362 posted on the course website The Basic Structure of Control Unit m CLK Run/Inhibit Control Step Counter m Preset (to any new state) Reset IR Decoder/Encoder (combinational logic)
More informationChapter 14 Design of the Central Processing Unit
Chapter 14 Design of the Central Processing Unit We now focus on the detailed design of the CPU (Central Processing Unit) of the Boz 7. The CPU has two major components: the Control Unit and the ALU (Arithmetic
More informationENGR 2031 Digital Design Laboratory Lab 7 Background
ENGR 2031 Digital Design Laboratory Lab 7 Background What we will cover Overview of the Simple Computer (scomp) Architecture Register Flow Diagrams VHDL Implementation of scomp Lab 7 scomp Architecture
More informationCOMPUTER ORGANIZATION & ARCHITECTURE
COMPUTER ORGANIZATION & ARCHITECTURE Instructions Sets Architecture Lesson 5a 1 What are Instruction Sets The complete collection of instructions that are understood by a CPU Can be considered as a functional
More informationCPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA)
CPE 323 MSP430 INSTRUCTION SET ARCHITECTURE (ISA) Aleksandar Milenković Email: milenka@uah.edu Web: http://www.ece.uah.edu/~milenka Objective Introduce MSP430 Instruction Set Architecture (Class of ISA,
More informationCHAPTER 5 A Closer Look at Instruction Set Architectures
CHAPTER 5 A Closer Look at Instruction Set Architectures 5.1 Introduction 199 5.2 Instruction Formats 199 5.2.1 Design Decisions for Instruction Sets 200 5.2.2 Little versus Big Endian 201 5.2.3 Internal
More information8051 Addressing Modes
8051 Addressing Modes Lets begin this article with a simple question. What is an addressing mode?. A simple question always has a simple answer too. Addressing mode is a way to address an operand. Operand
More informationChapter 3 Machine Instructions & Programs. Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan
Chapter 3 Machine Instructions & Programs Jin-Fu Li Department of Electrical Engineering National Central University Jungli, Taiwan Outline Numbers, Arithmetic Operations, and Characters Memory Locations
More informationChapter 5. A Closer Look at Instruction Set Architectures
Chapter 5 A Closer Look at Instruction Set Architectures Chapter 5 Objectives Understand the factors involved in instruction set architecture design. Gain familiarity with memory addressing modes. Understand
More informationChapter 5 The LC-3. ACKNOWLEDGEMENT: This lecture uses slides prepared by Gregory T. Byrd, North Carolina State University 5-2
Chapter 5 The LC-3 ACKNOWLEDGEMENT: This lecture uses slides prepared by Gregory T. Byrd, North Carolina State University 5-2 Instruction Set Architecture ISA = All of the programmer-visible components
More informationOverview. EE 4504 Computer Organization. Much of the computer s architecture / organization is hidden from a HLL programmer
Overview EE 4504 Computer Organization Section 7 The Instruction Set Much of the computer s architecture / organization is hidden from a HLL programmer In the abstract sense, the programmer should not
More informationAddressing Modes. To review data transfer instructions and applying the more advanced addressing modes.
Addressing Modes Aims To review 68000 data transfer instructions and applying the more advanced addressing modes. Intended Learning Outcomes At the end of this module, students t should be able to Review
More informationIntroduction to Computer Engineering. CS/ECE 252, Fall 2016 Prof. Guri Sohi Computer Sciences Department University of Wisconsin Madison
Introduction to Computer Engineering CS/ECE 252, Fall 2016 Prof. Guri Sohi Computer Sciences Department University of Wisconsin Madison Chapter 5 The LC-3 Instruction Set Architecture ISA = All of the
More informationLecture 04: Machine Instructions
CSCI2510 Computer Organization Lecture 04: Machine Instructions Ming-Chang YANG mcyang@cse.cuhk.edu.hk Reading: Chap. 2.3~2.4, 2.10~2.11 Recall: Instructions & Program A computer is governed by instructions.
More informationSlides for Lecture 6
Slides for Lecture 6 ENCM 501: Principles of Computer Architecture Winter 2014 Term Steve Norman, PhD, PEng Electrical & Computer Engineering Schulich School of Engineering University of Calgary 28 January,
More informationInstruction Set Architecture
Chapter 5 The LC-3 Instruction Set Architecture ISA = All of the programmer-visible components and operations of the computer memory organization address space -- how may locations can be addressed? addressibility
More informationEEL 5722C Field-Programmable Gate Array Design
EEL 5722C Field-Programmable Gate Array Design Lecture 12: Pipelined Processor Design and Implementation Prof. Mingjie Lin Patt and Patel: Intro. to Computing System * Stanford EE271 notes 1 Instruction
More informationIntroduction to Computer Engineering. Chapter 5 The LC-3. Instruction Set Architecture
Introduction to Computer Engineering CS/ECE 252, Spring 200 Prof. David A. Wood Computer Sciences Department University of Wisconsin Madison Chapter 5 The LC-3 Adapted from Prof. Mark Hill s slides Instruction
More informationCPU Structure and Function. Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition
CPU Structure and Function Chapter 12, William Stallings Computer Organization and Architecture 7 th Edition CPU must: CPU Function Fetch instructions Interpret/decode instructions Fetch data Process data
More informationChapter 4. MARIE: An Introduction to a Simple Computer. Chapter 4 Objectives. 4.1 Introduction. 4.2 CPU Basics
Chapter 4 Objectives Learn the components common to every modern computer system. Chapter 4 MARIE: An Introduction to a Simple Computer Be able to explain how each component contributes to program execution.
More informationChapter 4. Chapter 4 Objectives. MARIE: An Introduction to a Simple Computer
Chapter 4 MARIE: An Introduction to a Simple Computer Chapter 4 Objectives Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution.
More informationComputing Layers. Chapter 5 The LC-3
Computing Layers Problems Chapter 5 The LC-3 Original slides from Gregory Byrd, North Carolina State University Modified slides by Chris Wilcox, Colorado State University Algorithms Language Instruction
More informationThe Instruction Set. Chapter 5
The Instruction Set Architecture Level(ISA) Chapter 5 1 ISA Level The ISA level l is the interface between the compilers and the hardware. (ISA level code is what a compiler outputs) 2 Memory Models An
More informationMIPS and QTSPIM Recap. MIPS Architecture. Cptr280. Dr Curtis Nelson. Cptr280, Autumn
MIPS and QTSPIM Recap Cptr280 Dr Curtis Nelson MIPS Architecture The MIPS architecture is considered to be a typical RISC architecture Simplified instruction set Programmable storage 32 x 32-bit General
More informationArchitecture Project Phase (1)
Objective Cairo University CMP 301B Faculty of Engineering Spring 2013 Computer Engineering Department Architecture Project Phase (1) In this phase, it is required to design and implement a simple pipelined
More informationCPSC 121: Models of Computation. Module 10: A Working Computer
CPSC 121: Models of Computation The 10th online quiz is due Tuesday, March 26 th at 17:00. Assigned reading for the quiz: Epp, 4th edition: 6.1, 7.1 Epp, 3rd edition: 5.1, 6.1 Rosen, 6th edition: 2.1,
More informationLecture-12 INTERNAL ARCHITECTURE OF INTEL 8085: The Functional Block Diagram Of 8085 Is Shown In Fig 16.
Lecture-12 INTERNAL ARCHITECTURE OF INTEL 8085: The Functional Block Diagram Of 8085 Is Shown In Fig 16. It consists of five essential blocks. (1) ARITHMEDIC LOGIC SECTION (2) REGISTER SECTION (3) THE
More informationCOMP1917 Computing 1 Written Exam Sample Questions
COMP1917 Computing 1 Written Exam Sample Questions Note: these sample questions are intended to provide examples of a certain style of question which did not occur in the tutorial or laboratory exercises,
More informationLecture 7: Primitive Recursion is Turing Computable. Michael Beeson
Lecture 7: Primitive Recursion is Turing Computable Michael Beeson Closure under composition Let f and g be Turing computable. Let h(x) = f(g(x)). Then h is Turing computable. Similarly if h(x) = f(g 1
More informationLC-3 Instruction Set Architecture. Textbook Chapter 5
LC-3 Instruction Set Architecture Textbook Chapter 5 Instruction set architecture What is an instruction set architecture (ISA)? It is all of the programmer-visible components and operations of the computer
More informationENGN1640: Design of Computing Systems Topic 03: Instruction Set Architecture Design
ENGN1640: Design of Computing Systems Topic 03: Instruction Set Architecture Design Professor Sherief Reda http://scale.engin.brown.edu School of Engineering Brown University Spring 2016 1 ISA is the HW/SW
More informationComputer Architecture 1 ح 303
Lecture 4 A. Addressing MODES 1. Introduction to assembly language programming: Program is a sequence of commands used to tell a microcomputer what to do. Each command in a program is an instruction Programs
More informationFortunately not. In LC-3, there are a variety of addressing modes that deal with these concerns.
CIT 593 Intro to Computer Systems Lecture #8 (10/2/12) Now let's see how an LC-3 program can read data from ( load ) and write data to ( store ) memory. Whenever we load/read from memory, we always have
More informationReview Questions. 1 The DRAM problem [5 points] Suggest a solution. 2 Big versus Little Endian Addressing [5 points]
Review Questions 1 The DRAM problem [5 points] Suggest a solution 2 Big versus Little Endian Addressing [5 points] Consider the 32-bit hexadecimal number 0x21d3ea7d. 1. What is the binary representation
More informationExpectations. Why learn Assembly Language? Administrative Issues. Assignments. CSC 3210 Computer Organization and Programming
CSC 3210 Computer Organization and Programming Introduction and Overview Dr. Anu Bourgeois (modified by Michael Weeks) Expectations Writing code with loops Base conversions Especially involving decimal
More informationSystems I. Machine-Level Programming V: Procedures
Systems I Machine-Level Programming V: Procedures Topics abstraction and implementation IA32 stack discipline Procedural Memory Usage void swap(int *xp, int *yp) int t0 = *xp; int t1 = *yp; *xp = t1; *yp
More informationSyntax of LC-3 assembly: Language elements. Instructions
LC-3 Assembly Language (Textbook Chapter 7) Assembly and assembler Machine language - binary 0001110010000110 Assembly language - symbolic ADD R6, R2, R6 ; increment index reg. Assembler is a program that
More informationMicrocontroller. Instruction set of 8051
UNIT 2: Addressing Modes and Operations: Introduction, Addressing modes, External data Moves, Code Memory, Read Only Data Moves / Indexed Addressing mode, PUSH and POP Opcodes, Data exchanges, Example
More informationAssembly Language Programming. CPSC 252 Computer Organization Ellen Walker, Hiram College
Assembly Language Programming CPSC 252 Computer Organization Ellen Walker, Hiram College Instruction Set Design Complex and powerful enough to enable any computation Simplicity of equipment MIPS Microprocessor
More informationCS311 Lecture: The Architecture of a Simple Computer
CS311 Lecture: The Architecture of a Simple Computer Objectives: July 30, 2003 1. To introduce the MARIE architecture developed in Null ch. 4 2. To introduce writing programs in assembly language Materials:
More informationx64 Windows Debugging
x64 Windows Debugging Practical Foundations Dmitry Vostokov OpenTask 2 Published by OpenTask, Republic of Ireland Copyright 2009 by Dmitry Vostokov All rights reserved. No part of this book may be reproduced,
More information19 Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd
19 Much that I bound, I could not free; Much that I freed returned to me. Lee Wilson Dodd Will you walk a little faster? said a whiting to a snail, There s a porpoise close behind us, and he s treading
More informationCopyright The McGraw-Hill Companies, Inc. Permission required for reproduction or display. Computing Layers
Chapter 5 The LC-3 Original slides from Gregory Byrd, North Carolina State University Modified slides by C. Wilcox, S. Rajopadhye Colorado State University Computing Layers Problems Algorithms Language
More informationPACE figforth Implementation
PACE figforth Implementation Adapting the figforth Glossary to a word-addressing computer David Kilbridge FORTH Day 2009 November 21, 2009 Review of implementation project Nine reference implementations
More informationMARIE: An Introduction to a Simple Computer
MARIE: An Introduction to a Simple Computer Outline Learn the components common to every modern computer system. Be able to explain how each component contributes to program execution. Understand a simple
More informationWawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:,
Wawrzynek & Weaver CS 61C Sp 2018 Great Ideas in Computer Architecture MT 1 Print your name:, (last) (first) I am aware of the Berkeley Campus Code of Student Conduct and acknowledge that any academic
More informationCSIS1120A. 10. Instruction Set & Addressing Mode. CSIS1120A 10. Instruction Set & Addressing Mode 1
CSIS1120A 10. Instruction Set & Addressing Mode CSIS1120A 10. Instruction Set & Addressing Mode 1 Elements of a Machine Instruction Operation Code specifies the operation to be performed, e.g. ADD, SUB
More informationComputer Architecture /
Computer Architecture 02-201 / 02-601 The Conceptual Architecture of a Computer PC CPU register 0 register 1 register 2 registers hold small amounts of data for processing by the CPU Reading / writing
More informationMicrocontroller Intel [Instruction Set]
Microcontroller Intel 8051 [Instruction Set] Structure of Assembly Language [ label: ] mnemonic [operands] [ ;comment ] Example: MOV R1, #25H ; load data 25H into R1 2 8051 Assembly Language Registers
More informationMOS 6502 Architecture
MOS 6502 Architecture Lecture 3 Fall 17 1 History Origins lie in the Motorola 6800. Was very expensive for consumers. ($300, or about $1500 in 2017 $s) Chuck Peddle proposes lower-cost, lower-area 6800
More informationCHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN
CHAPTER SIX BASIC COMPUTER ORGANIZATION AND DESIGN 6.1. Instruction Codes The organization of a digital computer defined by: 1. The set of registers it contains and their function. 2. The set of instructions
More informationCOSC121: Computer Systems: Review
COSC121: Computer Systems: Review Jeremy Bolton, PhD Assistant Teaching Professor Constructed using materials: - Patt and Patel Introduction to Computing Systems (2nd) - Patterson and Hennessy Computer
More informationLecture 4: Instruction Set Architecture
Lecture 4: Instruction Set Architecture ISA types, register usage, memory addressing, endian and alignment, quantitative evaluation Reading: Textbook (5 th edition) Appendix A Appendix B (4 th edition)
More informationCS 3330 Exam 1 Fall 2017 Computing ID:
S 3330 Fall 2017 xam 1 Variant page 1 of 8 mail I: S 3330 xam 1 Fall 2017 Name: omputing I: Letters go in the boxes unless otherwise specified (e.g., for 8 write not 8 ). Write Letters clearly: if we are
More informationUMBC. A register, an immediate or a memory address holding the values on. Stores a symbolic name for the memory location that it represents.
Intel Assembly Format of an assembly instruction: LABEL OPCODE OPERANDS COMMENT DATA1 db 00001000b ;Define DATA1 as decimal 8 START: mov eax, ebx ;Copy ebx to eax LABEL: Stores a symbolic name for the
More information2.2 THE MARIE Instruction Set Architecture
2.2 THE MARIE Instruction Set Architecture MARIE has a very simple, yet powerful, instruction set. The instruction set architecture (ISA) of a machine specifies the instructions that the computer can perform
More informationWawrzynek & Weaver CS 61C. Sp 2018 Great Ideas in Computer Architecture MT 1. Print your name:,
Wawrzynek & Weaver CS 61C Sp 2018 Great Ideas in Computer Architecture MT 1 Print your name:, (last) (first) I am aware of the Berkeley Campus Code of Student Conduct and acknowledge that any academic
More informationLECTURE 17. Expressions and Assignment
LECTURE 17 Expressions and Assignment EXPRESSION SYNTAX An expression consists of An atomic object, e.g. number or variable. An operator (or function) applied to a collection of operands (or arguments)
More informationComputer Science 324 Computer Architecture Mount Holyoke College Fall Topic Notes: MIPS Instruction Set Architecture
Computer Science 324 Computer Architecture Mount Holyoke College Fall 2009 Topic Notes: MIPS Instruction Set Architecture vonneumann Architecture Modern computers use the vonneumann architecture. Idea:
More informationChapter 7 Assembly Language
Chapter 7 Assembly Language Computing Layers Problems Algorithms Language Instruction Set Architecture Microarchitecture Circuits Devices 2 Human-Readable Machine Language Computers like ones and zeros
More information