Presentation is loading. Please wait.

Presentation is loading. Please wait.

Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Information Representation: Machine Instructions.

Similar presentations


Presentation on theme: "Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Information Representation: Machine Instructions."— Presentation transcript:

1 Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Information Representation: Machine Instructions

2 Dale Roberts Review: Computer Organization A Typical Von-Neumann Architecture Example: Input unit Output unit Memory unit Arithmetic and logic unit (ALU) Central processing unit (CPU) Secondary storage unit Control Circuit (ex: PC: Program Counter) ALU MemoryI/O CPU

3 Dale Roberts Memory Computer memory is comparable to a collection of numbered mailboxes. To identify individual cells in a machine’s main memory, each cell is assigned a unique name, called its address The organization of byte-size memory cell... 010010000110010101101100011011110110110000101110 Hello, ASCII... Data Address 0000 01010000 01100000 01110000 10000001 0001 0010 Address Bus Data Bus 0 0 0 0 0 1 0 1 Low-order endHigh-order end Least Significant Bit (LSB)Most Significant Bit (MSB)

4 Dale Roberts Registers – Program Counter Program Counter (PC) Contains the memory address of the next instruction to be executed. The contents of the program counter are copied to the memory address register before an instruction is fetched from memory. At the completion of the fetched instruction, the control unit updates the program counter to point to the next instruction which is to be fetched. memory address registercontrol unitmemory address registercontrol unit

5 Dale Roberts Registers – Memory Address Register Memory Address Register (MAR) A register located on the central processing unit which is in turn connected to the address lines of the system. This register specifies the address in memory where information can be found and can be also used to point to a memory location where information is to be stored. central processing unit central processing unit

6 Dale Roberts Registers – Memory Buffer Register Memory Buffer Register (MBR) A register located on the central processing unit which is in turn connected to the data lines of the system. The main purpose of this register is to act as an interface between the central processing unit and memory. When the appropriate signal is received by the control unit, the memory location stored in the memory address register is used to copy data from or to the memory buffer register. central processing unit central processing unit control unitmemory address registercentral processing unit central processing unit control unitmemory address register

7 Dale Roberts Registers – Instruction Register Instruction Register (IR) A register located on the central processing unit which holds the contents of the last instruction fetched. This instruction is now ready to be executed and is accessed by the control unit. central processing unitcontrol unit central processing unitcontrol unit

8 Dale Roberts IR Structure The Instruction Register typically has a structure that includes operation code and an optional operand. Everyone calles the operation code an “Opcode” It is up to the manufacturer to determine how many bits comprise an instruction, and which bits store the opcode and operand.

9 Dale Roberts Registers - Accumulator Accumulator (ACC) A register located on the central processing unit. The contents can be used by the arithmetic- logic unit for arithmetic and logic operations, and by the memory buffer register. Usually, all results generated by the arithmetic-logic unit end up in the accumulator. central processing unitarithmetic- logic unitmemory buffer registerarithmetic-logic unitcentral processing unitarithmetic- logic unitmemory buffer registerarithmetic-logic unit

10 Dale Roberts Arithmetic Logic Unit Arithmetic-Logic Unit (ALU) Performs arithmetic operations such as addition and subtraction as well as logical operations such as AND, OR and NOT. Most operations require two operands. One of these operands usually comes from memory via the memory buffer register, while the other is the previously loaded value stored in the accumulator. The results of an arithmetic-logic unit operation is usually transfered to the accumulator. memory buffer registeraccumulator memory buffer registeraccumulator

11 Dale Roberts Memory Memory is made up of a series of zero's (0) and one's (1) called bits or binary. These individual bits are grouped together in lots of eight and are referred to as a byte. Every byte in memory can be accessed by a unique address which identifies its location. The memory in modern computers contains millions of bytes and is often referred to as random-access memory (RAM). Memory interacts with the MAR and MBR to read and write values from memory via a bus.

12 Dale Roberts Fetch/Execute Cycle All computers have an instruction execution cycle. A basic instruction execution cycle can be broken down into the following steps: Fetch cycle Fetch cycle Execute cycle Execute cycle

13 Dale Roberts Fetch cycle The illustrated fetch cycle above can be summarized by the following points: PC => MAR MAR => memory => MBR MBR => IR PC incremented

14 Dale Roberts Execute Cycle After the CPU has finished fetching an instruction, the CU checks the contents of the IR and determines which type of execution is to be carried out next. This process is known as the decoding phase. The instruction is now ready for the execution cycle.

15 Dale Roberts Types of Opcodes The actions within the execution cycle can be categorized into the following four groups: CPU - Memory: Data may be transferred from memory to the CPU or from the CPU to memory. CPU - I/O: Data may be transferred from an I/O module to the CPU or from the CPU to an I/O module. Data Processing: The CPU may perform some arithmetic or logic operation on data via the arithmetic-logic unit (ALU). arithmetic-logic unitarithmetic-logic unit Control: An instruction may specify that the sequence of operation may be altered. For example, the program counter (PC) may be updated with a new memory address to reflect that the next instruction fetched, should be read from this new location. program counterprogram counter

16 Dale Roberts LOAD ACC, memory The illustrated LOAD operation summarized in the following points: IR [address portion] => MAR MAR => memory => MBR MBR => ACC

17 Dale Roberts ADD ACC, memory The illustrated ADD operation can be summarized in the following points: IR [address portion] => MAR MAR => memory => MBR MBR + ACC => ALU ALU => ACC

18 Dale Roberts Acknowledgements Several graphics and terms were obtained from Jonathan Michael Auld Central Queensland University.Central Queensland University xComputer and its machine instructions were developed by David Eck.


Download ppt "Dale Roberts Department of Computer and Information Science, School of Science, IUPUI CSCI N305 Information Representation: Machine Instructions."

Similar presentations


Ads by Google