Code segment Stack segment

Similar documents
ADVANCE MICROPROCESSOR & INTERFACING

Intel 8086 MICROPROCESSOR ARCHITECTURE

MICROPROCESSOR PROGRAMMING AND SYSTEM DESIGN

EXPERIMENT WRITE UP. LEARNING OBJECTIVES: 1. Get hands on experience with Assembly Language Programming 2. Write and debug programs in TASM/MASM

SPRING TERM BM 310E MICROPROCESSORS LABORATORY PRELIMINARY STUDY

icroprocessor istory of Microprocessor ntel 8086:

Lecture 5:8086 Outline: 1. introduction 2. execution unit 3. bus interface unit

Microprocessor. By Mrs. R.P.Chaudhari Mrs.P.S.Patil

8086 INTERNAL ARCHITECTURE

Intel 8086 MICROPROCESSOR. By Y V S Murthy

UNIT 2 PROCESSORS ORGANIZATION CONT.

Northern India Engineering College, Delhi (GGSIP University) PAPER I

9/25/ Software & Hardware Architecture

Introduction to IA-32. Jo, Heeseung

INTRODUCTION TO IA-32. Jo, Heeseung

Introduction to Microprocessor

Lecture 15 Intel Manual, Vol. 1, Chapter 3. Fri, Mar 6, Hampden-Sydney College. The x86 Architecture. Robb T. Koether. Overview of the x86

Lecture 5: Computer Organization Instruction Execution. Computer Organization Block Diagram. Components. General Purpose Registers.

Complex Instruction Set Computer (CISC)

Microprocessor and Assembly Language Week-5. System Programming, BCS 6th, IBMS (2017)

Assembler Programming. Lecture 2

Program controlled semiconductor device (IC) which fetches (from memory), decodes and executes instructions.

Marking Scheme. Examination Paper Department of CE. Module: Microprocessors (630313)

VARDHAMAN COLLEGE OF ENGINEERING (AUTONOMOUS) Shamshabad, Hyderabad

EC-333 Microprocessor and Interfacing Techniques

Basic Execution Environment

The x86 Architecture

CC411: Introduction To Microprocessors

SRI VENKATESWARA COLLEGE OF ENGINEERING AND TECHNOLOGY DEPARTMENT OF ECE EC6504 MICROPROCESSOR AND MICROCONTROLLER (REGULATION 2013)

A Presentation created By Ramesh.K Press Ctrl+l for full screen view

Internal architecture of 8086

UNIT II OVERVIEW MICROPROCESSORS AND MICROCONTROLLERS MATERIAL. Introduction to 8086 microprocessors. Architecture of 8086 processors

Arithmetic Instructions

Addressing Modes on the x86

INDEX. 1 Study of intel 8085 micropeocessor kit. 2 Program to find addition of two 8 bit no. 3 Program to find subtraction of two 8 bit no.

The Microprocessor and its Architecture

Intel 8086: Instruction Set

Computer Architecture 1 ح 303

Hardware and Software Architecture. Chapter 2

Module 3 Instruction Set Architecture (ISA)

Faculty of Engineering Computer Engineering Department Islamic University of Gaza Assembly Language Lab # 2 Assembly Language Fundamentals

US06CCSC04: Introduction to Microprocessors and Assembly Language UNIT 1: Assembly Language Terms & Directives

Topic 2 :16 Bit Microprocessor: 8086 (24 Marks)

INSTRUCTOR: ABDULMUTTALIB A. H. ALDOURI

Signed number Arithmetic. Negative number is represented as

An 8-Bit Scientific Calculator Based Intel 8086 Virtual Machine Emulator

Assembly Language. Dr. Esam Al_Qaralleh CE Department Princess Sumaya University for Technology. Overview of Assembly Language

We can study computer architectures by starting with the basic building blocks. Adders, decoders, multiplexors, flip-flops, registers,...

Chapter 2 COMPUTER SYSTEM HARDWARE

16-Bit Intel Processor Architecture

Chapter Three Addressing Mode MOV AX, BX

Chapter Four Instructions Set

Unit I Introduction. Department of Electronics and Communication Engineering VARDHAMAN COLLEGE OF ENGINEERING Shamshabad, Hyderabad , India.

CS401 Assembly Language Solved MCQS From Midterm Papers

EC 333 Microprocessor and Interfacing Techniques (3+1)

Lecture (02) The Microprocessor and Its Architecture By: Dr. Ahmed ElShafee

Summer 2003 Lecture 4 06/14/03

UNIT-1. It is a 16-bit Microprocessor (μp).it s ALU, internal registers works with 16bit binary word.

Basic characteristics & features of 8086 Microprocessor Dr. M. Hebaishy

Marking Scheme. Examination Paper. Module: Microprocessors (630313)

8086 Microprocessors & Peripherals

PESIT Bangalore South Campus

The 8086 Microprocessor


UNIT-I. 1.Draw and explain the Architecture of a 8085 Microprocessor?

Microcomputer Architecture..Second Year (Sem.2).Lecture(2) مدرس المادة : م. سندس العزاوي... قسم / الحاسبات

Ex: Write a piece of code that transfers a block of 256 bytes stored at locations starting at 34000H to locations starting at 36000H. Ans.

EEM336 Microprocessors I. Data Movement Instructions

INTRODUCTION TO MICROPROCESSORS

Ex : Write an ALP to evaluate x(y + z) where x = 10H, y = 20H and z = 30H and store the result in a memory location 54000H.

1. Introduction to Assembly Language

Dr. Ramesh K. Karne Department of Computer and Information Sciences, Towson University, Towson, MD /12/2014 Slide 1

EC 333 Microprocessor and Interfacing Techniques (3+1)

x86 Assembly Tutorial COS 318: Fall 2017

Assembling, Linking and Executing 1) Assembling: .obj obj .obj.lst .crf Assembler Types: a) One pass assembler:

ELE 3230 Microprocessors and Computer Systems

if 2 16bit operands multiplied the result will be

Moodle WILLINGDON COLLEGE SANGLI (B. SC.-II) Digital Electronics

EEM336 Microprocessors I. The Microprocessor and Its Architecture

Computer Processors. Part 2. Components of a Processor. Execution Unit The ALU. Execution Unit. The Brains of the Box. Processors. Execution Unit (EU)

iapx Systems Electronic Computers M

8088/8086 Programming Integer Instructions and Computations

ASSEMBLY LANGUAGE PROGRAMMING OF THE MICROCOMPUTER

EE2007 Microprocessor systems.

Machine-level Representation of Programs. Jin-Soo Kim Computer Systems Laboratory Sungkyunkwan University

CG2007 Microprocessor systems.

Experiment 3 3 Basic Input Output

6/17/2011. Introduction. Chapter Objectives Upon completion of this chapter, you will be able to:

Chapter 02: Computer Organization. Lesson 02: Functional units and components in a computer organization- Part 1: Processor

Chapter 4: Data Movement Instructions. 4 1 MOV Revisited

Q1: Multiple choice / 20 Q2: Protected mode memory accesses

CS401 Assembly Language Solved Subjective MAY 03,2012 From Midterm Papers. MC

IA32 Intel 32-bit Architecture

Chapter 2: The Microprocessor and its Architecture

Chapter 3: Addressing Modes

The Instruction Set. Chapter 5

MODE (mod) FIELD CODES. mod MEMORY MODE: 8-BIT DISPLACEMENT MEMORY MODE: 16- OR 32- BIT DISPLACEMENT REGISTER MODE

Data Movement Instructions

WINTER 12 EXAMINATION Subject Code : Model Answer Page No : / N. a) Describe the function of SID and SOD pins of 8085 microprocessor

MPID MICROPROCESSOR AND ITS INTERFACING DEVICES EEE III II SEMESTER OBJECTIVE QUESTIONS

Transcription:

Registers Most of the registers contain data/instruction offsets within 64 KB memory segment. There are four different 64 KB segments for instructions, stack, data and extra data. To specify where in 1 MB of processor memory these 4 segments are located the processor uses four segment registers: Code segment (CS) is a 16-bit register containing address of 64 KB segment with processor instructions. The processor uses CS segment for all accesses to instructions referenced by instruction pointer (IP) register. CS register cannot be changed directly. The CS register is automatically updated during far jump, far call and far return instructions. Stack segment (SS) is a 16-bit register containing address of 64KB segment with program stack. By default, the processor assumes that all data referenced by the stack pointer (SP) and base pointer (BP) registers is located in the stack segment. SS register can be changed directly using POP instruction.

Segment Register Data Register Pointer & index Register

Data segment (DS) is a 16-bit register containing address of 64KB segment with program data. By default, the processor assumes that all data referenced by general registers (AX, BX, CX, DX) and index register (SI, DI) is located in the data segment. DS register can be changed directly using POP and LDS instructions. Extra segment (ES) is a 16-bit register containing address of 64KB segment, usually with program data. By default, the processor assumes that the DI register references the ES segment in string manipulation instructions. ES register can be changed directly using POP and LES instructions. It is possible to change default segments used by general and index registers by prefixing instructions with a CS, SS, DS or ES prefix.

All general registers of the 8086 microprocessor can be used for arithmetic and logic operations. The general registers are: Accumulator register consists of 2 8-bit registers AL and AH, which can be combined together and used as a 16-bit register AX. AL in this case contains the low-order byte of the word, and AH contains the high-order byte. Accumulator can be used for I/O operations and string manipulation. Base register consists of 2 8-bit registers BL and BH, which can be combined together and used as a 16-bit register BX. BL in this case contains the low-order byte of the word, and BH contains the high-order h byte. BX register usually contains a data pointer used for based, based indexed or register indirect addressing. Count register consists of 2 8-bit registers CL and CH, which can be combined together and used as a 16-bit register CX. When combined, CL register contains the low-order order byte of the word, and CH contains the high-order byte. Count register can be used as a counter in string manipulation and shift/rotate instructions. Data register consists of 2 8-bit registers DL and DH, which can be combined together and used as a 16-bit register DX. When combined, DL register contains the low-order byte of the word, and DH contains the high-order byte. Data register can be used as a port number in I/O operations. In integer 32-bit multiply pyand divide instruction the DX register contains high-order word of the initial or resulting number.

The following registers are both general and index registers: Stack Pointer (SP) is a 16-bit register pointing i to program stack. Base Pointer (BP) is a 16-bit register pointing to data in stack segment. BP register is usually used for based, based indexed or register indirect addressing. Source Index (SI) is a 16-bit register. SI is used for indexed, based indexed and register indirect addressing, as well as a source data address in string manipulation instructions. Destination Index (DI) is a 16-bit register. DI is used for indexed, based id indexed dand register it indirect idi addressing, as well as a destination data dt address in string manipulation instructions.

Other registers: Instruction Pointer (IP) is a 16-bit register. Flags is a 16-bit register containing 9 1-bit flags: Overflow Flag (OF) - set if the result is too large positive number, or is too small negative number to fit into destination operand. Direction Flag g( (DF) - if set then string manipulation instructions will auto- decrement index registers. If cleared then the index registers will be autoincremented. Interrupt-enable Flag (IF) - setting this bit enables maskable interrupts. Single-step Flag (TF) - if set then single-step interrupt will occur after the next instruction. Sign Flag (SF) - set if the most significant bit of the result is set. Zero Flag (ZF) -set if the result is zero. Auxiliary carry Flag (AF) - set if there was a carry from or borrow to bits 0-3 in the AL register. Parity Flag (PF) - set if parity (the number of "1" bits) in the low-order order byte of the result is even. Carry Flag (CF) - set if there was a carry from or borrow to the most significant bit during last result calculation.