Instructions Instructions (referred to as micro-instructions in the book) specify a relatively simple task to be executed It is assumed that data are stored.

Slides:



Advertisements
Similar presentations
Chapter 2: Data Manipulation
Advertisements

MIPS assembly. Review  Lat lecture, we learnt  addi,  and, andi, or, ori, xor, xori, nor,  beq, j, bne  An array is stored sequentially in the memory.
CPU Review and Programming Models CT101 – Computing Systems.
Control path Recall that the control path is the physical entity in a processor which: fetches instructions, fetches operands, decodes instructions, schedules.
Superscalar processors Review. Dependence graph S1S2 Nodes: instructions Edges: ordered relations among the instructions Any ordering-based transformation.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 2: IT Students.
ITCS 3181 Logic and Computer Systems 2015 B. Wilkinson slides3.ppt Modification date: March 16, Addressing Modes The methods used in machine instructions.
ECE 2162 Tomasulo’s Algorithm. Implementing Dynamic Scheduling Tomasulo’s Algorithm –Used in IBM 360/91 (in the 60s) –Tracks when operands are available.
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.
Arithmetic Expression Consider the expression arithmetic expression: (a – b) + ((c + d) + (e * f)) that can be represented as the following tree.
Chapter 2.2 Machine Language.
Princess Sumaya Univ. Computer Engineering Dept. Chapter 2:
Assembly & Machine Languages
Lecture 3. Diff b/w RAM and Registers Registers are used to hold data immediately applicable to the operation at hand Registers are used to hold data.
4-1 Chapter 4 - The Instruction Set Architecture Computer Architecture and Organization by M. Murdocca and V. Heuring © 2007 M. Murdocca and V. Heuring.
December 8, 2003Other ISA's1 Other ISAs Next, we discuss some alternative instruction set designs. – Different ways of specifying memory addresses – Different.
CPU Design. Introduction – The CPU must perform three main tasks: Communication with memory – Fetching Instructions – Fetching and storing data Interpretation.
1. 2 Instructions: Words of the language understood by CPU Instruction set: CPU’s vocabulary Instruction Set Architecture (ISA): CPU’s vocabulary together.
Lecture 4: MIPS Instruction Set Reminders: –Homework #1 posted: due next Wed. –Midterm #1 scheduled Friday September 26 th, 2014 Location: TODD 430 –Midterm.
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.
Represents different voltage levels High: 5 Volts Low: 0 Volts At this raw level a digital computer is instructed to carry out instructions.
DIGITAL SIGNAL PROCESSORS. Von Neumann Architecture Computers to be programmed by codes residing in memory. Single Memory to store data and program.
A Simple Computer. Computing Models A simple computer model with a unified notion of “data” and “instructions” “Von Neumann” architecture model The first.
Register Transfer Languages (RTL)
Computer Systems – Machine & Assembly code. Objectives Machine Code Assembly Language Op-code Operand Instruction Set.
Operand Addressing And Instruction Representation Tutorial 3.
Computer Organization Instructions Language of The Computer (MIPS) 2.
MIPS Processor.
An example of multiplying two numbers A = A * B;
A Closer Look at Instruction Set Architectures: Expanding Opcodes
Decode and Operand Read
LA Load Address.
Arithmetic Instructions
Data Representation – Instructions
The fetch-execute cycle
Computer Architecture
Programming Languages (CS 550) Mini Language Compiler
MISP Assembly.
MIPS Processor.
Chapter 8 Central Processing Unit
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
Computer Science 210 Computer Organization
Stack Relative Deferred (sf) Indexed (x) Stack Indexed (sx)
Computer Architecture and the Fetch-Execute Cycle
Pipelining Chapter 6.
Architecture Overview
Computer Science 210 Computer Organization
Unit 12 CPU Design & Programming
Enhancing Data Path M 4-bit Reg X A L U
Classification of instructions
Stack Relative Deferred (sf) Indexed (x) Stack Indexed (sx)
Other ISAs Next, we’ll first we look at a longer example program, starting with some C code and translating it into our assembly language. Then we discuss.
Other ISAs Next, we’ll first we look at a longer example program, starting with some C code and translating it into our assembly language. Then we discuss.
MARIE: An Introduction to a Simple Computer
Instruction encoding We’ve already seen some important aspects of processor design. A datapath contains an ALU, registers and memory. Programmers and compilers.
Addressing mode summary
Instruct Set Architecture Variations
MIPS Assembly.
Appendix C Practice Problem Set 1
Today: a look to the future
MIPS assembly.
Example 1: (expression evaluation)
Lecture: Pipelining Basics
7/6/
Programming Languages (CS 360) Mini Language Compiler
MIPS Processor.
9/13/
Algoritmos y Programacion
Little Man Computer.
MIPS Assembly.
Presentation transcript:

Instructions Instructions (referred to as micro-instructions in the book) specify a relatively simple task to be executed It is assumed that data are stored in memory called data_mem Instructions are also stored in another memory called inst_mem For example move (x, y) means move contents of memory location x into y add (x, y, z) means add contents of locations x and y and store result into location z cmove (cx, y) means move a constant cx into location y cadd (cx, y, z) means add constant cx and contents of memory location y and store result into memory location z And similar instruction like for add for sub, and, or, xor.. See Table 12.9 in the book for more example

Another Type of Instructions A collection of instructions is called an instruction set We operated on contents of memory locations or constants In more recent instruction sets (RISC for example), operands for most instructions are supposed to be in registers only Only instructions like LOAD/STORE work with memory operands Instruction set include instructions like LD R5, A /* Load contents of memory location into register R5 */ ST R5, A /* Store contents of R5 into memory location R5 */ ADD R3, R4, R5 /* Add contents of registers R4 and R5 and store the result into register R3 */ Similar instruction like Add such as SUB< AND< OR XOR In these instructions only LD and STORE take more time

Using Instructions Using the instructions we can write program For example for expression like D = A * B + C will translated into the following program using first instruction set MUL (A, B, D) ADD (D, C, D) If we use the second instruction set, the program will be LD R1, A /* Get A into R1*/ LD R2, B /* Get B into R2*/ MUL R1, R1, R2 /* Multiply R1, R2, result into R1 */ LD R2, C /* Get C into R2 */ ADD R1, R1, R2 /* Add R1 and R2, result into R1 */ ST R1, D /* Store R1 into D */ These instructions are stored in program memory and executed using a data path one at a time