Types of Registers (8086 Microprocessor Based)

Slides:



Advertisements
Similar presentations
Intel 8086.
Advertisements

Block Diagram of Intel 8086 Engr.M.Zakir Shaikh
Register In computer architecture, a processor register is a small amount of storage available on the CPU whose contents can be accessed more quickly than.
Registers of the 8086/ /2002 JNM.
There are two types of addressing schemes:
MICROPROCESSORS TWO TYPES OF MODELS ARE USED :  PROGRAMMER’S MODEL :- THIS MODEL SHOWS FEATURES, SUCH AS INTERNAL REGISTERS, ADDRESS,DATA & CONTROL BUSES.
Introduction to 8086 Microprocessor
SOFTWARE ARCHITECTURE OF THE 8088 AND 8086 MICROPROCESSORS
Introduction to Microprocessor
CEN 226: Computer Organization & Assembly Language :CSC 225 (Lec#3) By Dr. Syed Noman.
Princess Sumaya Univ. Computer Engineering Dept. د. بســام كحـالــه Dr. Bassam Kahhaleh.
Princess Sumaya University
8-1 ECE 424 Design of Microprocessor-Based Systems Haibo Wang ECE Department Southern Illinois University Carbondale, IL x86 Instructions Part.
ICS312 Set 3 Pentium Registers. Intel 8086 Family of Microprocessors All of the Intel chips from the 8086 to the latest pentium, have similar architectures.
80x86 Processor Architecture
© 2006 Pearson Education, Upper Saddle River, NJ All Rights Reserved.Brey: The Intel Microprocessors, 7e Chapter 2 The Microprocessor and its Architecture.
Gursharan Singh Tatla Block Diagram of Intel 8086 Gursharan Singh Tatla 19-Apr-17.
Unit-1 PREPARED BY: PROF. HARISH I RATHOD COMPUTER ENGINEERING DEPARTMENT GUJARAT POWER ENGINEERING & RESEARCH INSTITUTE Advance Processor.
Riyadh Philanthropic Society For Science Prince Sultan College For Woman Dept. of Computer & Information Sciences CS 251 Introduction to Computer Organization.
The 8086 Microprocessor The 8086, announced in 1978, was the first 16-bit microprocessor introduced by Intel Corporation 8086 is 16-bit MPU. Externally.
An Introduction to 8086 Microprocessor.
1 Fundamental of Computer Suthida Chaichomchuen : SCC
MOHD. YAMANI IDRIS/ NOORZAILY MOHAMED NOOR1 Addressing Mode.
Faculty of Engineering, Electrical Department,
Lecture 4 ( Assembly Language).
Computers organization & Assembly Language Chapter 1 THE 80x86 MICROPROCESSOR.
3.4 Addressing modes Specify the operand to be used. To generate an address, a segment register is used also. Immediate addressing: the operand is a number.
6-4 CPU-Registers, effective address General registers vs Segment registers Computer Studies (AL)
Introduction to Microprocessors Chapter 3. Programming Model (8086)  Shows the various internal registers that are accessible to the programmer.
INTRODUCTION TO INTEL X-86 FAMILY
MODULE 5 INTEL TODAY WE ARE GOING TO DISCUSS ABOUT, FEATURES OF 8086 LOGICAL PIN DIAGRAM INTERNAL ARCHITECTURE REGISTERS AND FLAGS OPERATING MODES.
Internal Programming Architecture or Model
Intel 8086 MICROPROCESSOR ARCHITECTURE
Computer Organization & Assembly Language University of Sargodha, Lahore Campus Prepared by Ali Saeed.
Intel MP Organization. Registers - storage locations found inside the processor for temporary storage of data 1- Data Registers (16-bit) AX, BX, CX, DX.
SOFTWARE ARCHITECTURE OF THE 8088 AND 8086 MICROPROCESSORS
ΜComputer Structure μProcessor Memory Bus System I/O Ports.
Chapter 12 Processor Structure and Function. Central Processing Unit CPU architecture, Register organization, Instruction formats and addressing modes(Intel.
An Introduction to 8086 Microprocessor.
UNIT Architecture M.Brindha AP/EIE
Introduction to 8086 Microprocessor
8086 Microprocessor.
ADDRESSING MODES.
Intel 8086 MICROPROCESSOR Architecture.
EE3541 Introduction to Microprocessors
Basic Microprocessor Architecture
ADDRESSING MODES.
Microprocessor The microprocessors functions as the CPU in the stored program model of the digital computer. Its job is to generate all system timing signals.
University of Gujrat Department of Computer Science
Intel 8088 (8086) Microprocessor Structure
Symbolic Instruction and Addressing
Introduction to Assembly Language
Microprocessor & Assembly Language
Intel 8088 (8086) Microprocessor Structure
8086 Registers Module M14.2 Sections 9.2, 10.1.
CS-401 Computer Architecture & Assembly Language Programming
Morgan Kaufmann Publishers Computer Organization and Assembly Language
Symbolic Instruction and Addressing
CS 301 Fall 2002 Computer Organization
University of Gujrat Department of Computer Science
The Microprocessor & Its Architecture
Symbolic Instruction and Addressing
Computer Architecture CST 250
Unit-I 80386DX Architecture
Chapter 6 –Symbolic Instruction and Addressing
Process.
Intel 8086.
Chapter 8: Instruction Set 8086 CPU Architecture
8086 microprocessior PIN OUT DIAGRAM OF  Power supply and frequency signals  It uses 5V DC supply at V CC pin 40, and uses ground at V SS pin.
Part I Data Representation and 8086 Microprocessors
Presentation transcript:

Types of Registers (8086 Microprocessor Based) Slides Developed By: Mr. Faiq Masood Lecturer, BCA Department IP College 2nd Campus , Bulandshahr

Types of Registers (Micro Processor 8086 Based) “The addressable storage elements known as registers”. Generally the registers are 16 bit wide. Registers are grouped on the basis of the meaning assigned to them. Fourteen 16 bit H/W registers are divided into five groups: All are 16 bit General Purpose Registers (AX, BX, CX and DX) Pointer and Index Registers (SP, BP, SI and DI) Segment Registers (CS, DS, ES and SS) Instruction Pointer Register (IP) Flag Register (FR)

8086 Registers Flag Register

General Purpose Registers (GPRs ) AX (Accumulator) Register Some of the operations, such as MUL and DIV, require that one of the operands be in the accumulator. It’s divided into two parts AH and AL. It’s most efficient in data movement, Arith. and Logical operations. 2. BX (Base) Register It is the only general-purpose register which may be used for indirect addressing. For example, the instruction MOV [BX], AX causes the contents of AX to be stored in the memory location whose address is given in BX. It’s suitable for accessing the elements of an array from the memory. Its divided in 2 parts BH and BL. 3.CX (Count)Register CX is the "count'' register. The looping instructions (LOOP, LOOPE, and LOOPNE), the shift and rotate instructions

and the string instructions all use the count register to determine how many times they will repeat. And divided into two parts CH & CL. 4. DX (Data) Register DX is the "data'' register; it is used together with AX for the word-size MUL and DIV operations, and it can also hold the port number for the IN and OUT instructions, but it is mostly available as a convenient place to store data, as are all of the other general-purpose registers. It’s also divided in two parts DH and DL.

Pointer and Index Registers The pointer registers are generally used for storing the offset address of data elements stored in the stack. The index registers are used for storing index or offset of the array elements. Stack Pointer (SP) :It indicating the current position of the top of the stack. The process of storing data onto the stack is known as PUSH operation and process for retrieving the data from the stack is known as POP operation. Base Pointer (BP): BP is the base pointer, which can be used for indirect addressing similar to BX. Source Index(SI): SI is the source index, used as a pointer to the current character being read in a string instruction. Its suitable for accessing array means element of an array from the memory. Destination index(DI): It used as a pointer to the current character being written or compared in a string instruction.

Instruction Pointer(IP): The IP register always holds the memory address of the next instruction to be executed. Segment Registers Since all of these registers are 16 bits wide, they can only contain addresses for memory within a range of 64K (=2^16) bytes. To support machines with more than 64K of physical memory, Intel implemented the concept of segmented memory. At any given time, a 16-bit address will be interpreted as an offset within a 64K segment determined by one of the four segment registers (CS, DS, ES, and SS).

Code Segment (CS): this is where the executable code of a program is located. The CS register points to the start of the memory block which contains the next instruction to be executed. Data Segment (DS): It is the default segment for most memory accesses. It points to the start of the data segment where most of the operands are store. Extra Segment(ES): It can be used instead of DS when data from two segments need to be accessed at once. The ES is generally make to use additional block of memory for data storage. Stack segment (SS): the stack pointer SP gives the offset of the current top-of-stack within the stack segment. It points to the start of the memory block (64 KB) known as the stack memory.

Flag Register:  FLAGS, is a collection of 1-bit values which reflect the current state of the processor and the results of recent operations. Nine of the sixteen bits are used in the 8086: Carry Flag (CF): is set (CF=1) if an addition produces a carry or if a sub. Needs a borrow. Parity Flag (PF): is set(PF=1) if the low-order byte of the last data operation contained an even number of 1 bits; otherwise it is cleared. Auxiliary Flag (AF): is set(AF=1) if there is a carry out of the third bit during an addition process or a borrow by the 3rd bit during a sub. Zero Flag (ZF): is set(ZF=1) if an addition or a subtraction produces a 0 result. Sign Flag (SF): it is equal to the MSB of the result. It’s set(SF=1) if MSB is one; otherwise SF is reset.

Trap Flag (TF): if TF is set(TF=1), a trap is executed after each instruction. This feature is useful in implementing the program debugging utilities. Interrupt Flag (IF): If the IF is set a maskable interrupt type can be recognized by the CPU; otherwise these interrupts are ignored. Direction Flag (DF): It’s used for the manipulation of the data array in string instructions. If DF is set , the string is processed from the higher address towards the lower address. Overflow Flag (OF): It’s set (OF=1) if an addition produces a carry out of the MSB. In Sub. Operation, its set when the MSB needs a borrow and there is no borrow available from the MSB.

Example of Flag Register 0010 1100 0011 0101 +0010 0101 0101 1010 0101 0001 1000 1111 Status of the flags CF=0, PF=0, AF=0, ZF=0, SF=0 Another Example 1010 0101 0000 1010 +1110 0000 1010 1000 1000 0101 1011 0010 Status of the Flags CF=1, PF=1, AF=0, ZF=0, SF=1

THANK YOU