SlideShare a Scribd company logo
8086 add mod
 Select the appropriate addressing mode to
accomplish a given task.
 Detail the difference between addressing
memory data using real mode and protected
mode operation.
 Describe the sequence of events that place data
onto the stack or remove data from the stack.
 Explain how a data structure is placed in
memory and used with software.
 An addressing mode means the method by which
an operand can be specified in a register or a
memory location
 8086provide a seven Addressing Modes:
(1) Register Addressing
(2) Immediate Addressing
(3) Direct Addressing
(4) Register Indirect Addressing
(5) Based Indexed Addressing
(6) Register Relative Addressing
(7) Relative Based Indexed Addressing
8-bit 8-bit 8-bit
OP CODE OPERAND
byte 1 to 2 byte
 An opcode is a short of “operation code”
 An opcede is a singe instruction can be executed by the CPU.
In machine language it is a binary or hexadecimal value such
as B7 loaded into the instruction register.
 In assembly language mnemonic form an opcode is a
command such as MOV or ADD or JMP.
 Example:
MOV AX, 1000H ; MOV is the opcode.
; AX (register) is an operand.
 Operands are manipulated by the opcode. In this example,
the operands are the register AX and the value 1000H.
 Transfers a copy of a byte or word from the source register
or memory location to the destination register or memory
location.
 Use of registers to hold the data to be manipulated
 Memory is not accessed when this addressing mode is
executed
 Example:
MOV BX, DX
MOV ES, AX
ADD AL, BH
; copy the contents of DX into BX
; copy the contents of AX into ES
; add the contents of BH to
contents of AL
destination registers must have the same size
8086 add mod
 Transfers the source, an immediate byte or word of data,
into the destination register or memory location
 The source operand is a constant
 The operand comes immediately after the opcode
 For this reason, this addressing mode executes quickly
 Immediate addressing mode can be used to load
information into any of the registers except the segment
registers and flag registers.
 Example:
MOV AX, 2550H
MOV CX, 625
MOV BL, 40H
; move 2550H into AX
; load the decimal value 625 into
CX
; load 40H into BL
 The data must first be moved to a general-purpose
register and then to the segment register.
 Example:
MOV AX, 2550H MOV DS, AX
MOV DS, 0123H ; illegal instruction!
8086 add mod
Moves a byte or word between a memory location and
a register.
The data is in some memory location(s) and the
address of the data in memory comes immediately
after the instruction
This address is the offset address
Example:
MOV AX, [2400] ; move contents of DS:2400H
into AX
The physical address is calculated by combining the
contents of offset location 2400 with DS
 Example:
Find the physical address of the memory location and its
contents after the execution of the following, assuming that DS
= 1512H.
AL, 3BH
[3518], AL
MOV
MOV
Sol
ution
:
 First 3BH is copied into AL,
 Then in line two, the contents of AL are moved to logical
address DS:3518 which is 1512:3518.
 Shifting DS left and adding it to the offset gives the physical
address of 18638H (15120H + 3518H = 18638H).
 After the execution of the second instruction, the memory
Prof. Fayleoz Fc. aMa.tEil-oSonusy with address 18638H will contain the
value 3BH.
8086 add mod
Transfers a byte or word between a register and a
memory location addressed by an index or base
register
The address of the memory location where the
operand resides is held by a register
The registers used for this purpose are SI, DI, and BX
They must be combined with DS in order to generate
the 20-bit physical address.
Example:
MOV AX, [BX] ; moves into AX the contents of
the memory location pointed
to by DS:BX, 1000:1234
The physical address is calculated as
1000x10+1234=11234H
The same rules apply when using register SI or DI.
Example:
MOV CL, [SI]
MOV [DI], AH
; move contents of DS:SI into CL
; move contents of AH into DS:DI
 Example:
 Assume that DS = 1120, SI = 2498, and AX = 17FE Show
the contents of memory locations after the execution of
MOV [SI], AX ; move contents of AX into DS:SI
 Solution:
The contents of AX are moved into memory locations
with logical address DS:SI and DS:SI + 1;
The physical address starts at DS (shifted left) + SI =
13698. According to the little endian convention,
Low address 13698H contains FE, the low byte,
High address 13699H will contain 17, the high byte.
8086 add mod
 Transfers a byte or word between a register and the memory location
addressed by a base register (BP or BX) plus an index register (DI or
SI).
 Combining based and indexed addressing modes.
 One base register and one index register are used.
 Examples:
MOV [BX+DI], CL ; move contents of CL into DS:BX+DI
 Physical Address = DSx10 + BX+DI
MOV CH, [BX+SI] ; move contents of the DS:BX+SI into CH
 Physical Address = DSx10 + BX+SI
MOV AH, [BP+DI] ; move contents of the SS:BP+SI into AH
 Physical Address = SSx10 + BP+DI
MOV [BP+SI], AL ; move contents of AL into SS:BP+SI
= SSx10 + BP+SI
8086 add mod
 Moves a byte or word between a register and the memory location
addressed by an index or base register plus a displacement.
 The data in a segment of memory are addressed by adding the
displacement to the contents of a base or an index register (BP, BX, DI,
or SI).
 Examples:
MOV AX, [BX+4] ; move contents of DS:BX+4 into AX
 Physical Address = DSx10 + BX+4
MOV CH, [SI+5] ; move contents of the DS:SI+5 into CH
 Physical Address = DSx10 +SI+5
MOV AH, [DI+1] ; move contents of the DS:DI+1 into AH
 Physical Address = DSx10 + DI+1
MOV [BP+2], AL ; move contents of AL into SS:BP+2
= SSx10 + BP+2
 Example:
 Assume that DS = 4500, SS = 2000, BX = 2100, SI = 1486, DI =
 8500, BP= 7814, andAX = 2512. Show the exact physical memory location where
AX is stored in each of the following.All values are in hex.
1 MOV [BX+20], AX
2 MOV [SI+10], AX
3 MOV [DI+4], AX
4 MOV [BP+12], AX
 Solution:
 Physical Address = segment reg. x 10 + (offset reg.) +
displacement
1 DS:BX+20
2 DS:SI+10
3 DS:DI+4
4- SS:BP+12
location 47120 = (12) and 47121 = (25)
location 46496 = (12) and 46497 = (25 )
location 4D504 = (12) and 4D505 = (25)
location 27826 = (12) and 27827 = (25)
8086 add mod
 The base relative-plus-index addressing mode is similar to the
base-plus-index addressing mode, but adds a displacement
besides using a base register and an index register to form the
memory address.
 This type of addressing mode often addresses a two-dimensional
array of memory data.
 The data in a segment of memory are addressed by adding the
displacement to the contents of a base and an index register (BP,
BX, DI, or SI).
 Examples:
MOV [BX+DI+1], AX ; move contents of AX into
DS:BX+DI+1
 Physical Address = DSx10 + BX+DI+1H
MOV AX, [BX+SI+10]; move contents of the DS:BX+SI+10
into AX
PhysicalAddress = DSx10 + BX+SI+10H
MOV AH, [BP+DI+3] ; move contents of the SS:BP+SI+3
into AH
 Physical Address = SSx10 + BP+DI+3H
MOV [BP+SI+6], AL ; move contents of AL into
SS:BP+SI+6
 Physical Address = SSx10 + BP+SI+6
MOV AX, FILE[BX+DI] ; move contents of the
DS:FILE+BX+DI into AX
 Physical Address = DSx10 + BX+DI+FILE
MOV LIST[BP+SI+4], DH ; move contents of DH into
SS:LIST+BP+SI+4
Address = SSx10 +LIST+ BP+SI+4
8086 add mod
Segment Register CS DS ES SS
Offset Register IP SI, DI, BX SI, DI, BX SP, BP
The following Table provides a summary of the
offset registers that can be used with the four
segment registers of the 8086
8086 add mod

More Related Content

PPTX
Arm instruction set
PPTX
Unit 3 CO.pptx
PPTX
Instruction Set Architecture: MIPS
PPTX
General Purpose Registers.pptx
PPTX
Addressing modes
PPT
Memory reference instruction
PPTX
General register organization (computer organization)
PPTX
Conventional memory
Arm instruction set
Unit 3 CO.pptx
Instruction Set Architecture: MIPS
General Purpose Registers.pptx
Addressing modes
Memory reference instruction
General register organization (computer organization)
Conventional memory

What's hot (20)

DOCX
Central processing unit
PPTX
Register transfer and micro-operation
PPT
Addressing modes
PPT
Addressing modes
DOC
8086 class notes-Y.N.M
PPTX
Addressing modes of 8086
PPTX
Floating point representation
PPTX
Hardwired control
PPTX
Instruction set of 8086
PPT
B.sc cs-ii-u-3.2-basic computer programming and micro programmed control
PPTX
Instruction Set Architecture
PPTX
Instruction sets of 8086
PPTX
BCD arithmetic and 16-bit data operations
PPTX
Instruction cycle with interrupts
PPT
Assignment on alp
PPTX
Computer architecture addressing modes and formats
PPT
Assembly language programming_fundamentals 8086
PPTX
Bcd arithmetic instructions
PPTX
Addressing mode Computer Architecture
PPT
CO by Rakesh Roshan
Central processing unit
Register transfer and micro-operation
Addressing modes
Addressing modes
8086 class notes-Y.N.M
Addressing modes of 8086
Floating point representation
Hardwired control
Instruction set of 8086
B.sc cs-ii-u-3.2-basic computer programming and micro programmed control
Instruction Set Architecture
Instruction sets of 8086
BCD arithmetic and 16-bit data operations
Instruction cycle with interrupts
Assignment on alp
Computer architecture addressing modes and formats
Assembly language programming_fundamentals 8086
Bcd arithmetic instructions
Addressing mode Computer Architecture
CO by Rakesh Roshan
Ad

Similar to 8086 add mod (20)

PPTX
Microprocessor Chapter3 hawassa Univetsi
PPTX
8086 addressing modes
PDF
8086addressingmodes-200319141110.pdf
DOCX
Addressing modes of 8086
PPTX
All-addressing-modes of the 80386 /microprocessor.pptx
PPTX
Adressing modes of 8086
DOCX
Notes 8086 instruction format
PPTX
instructionsetsofjdtufgmictfgfjh8086.pptx
PPTX
Addressing Modes Of 8086
PPT
a wounderful lecture on microprocessor 8086
PDF
8086 instruction set
PDF
8086 instruction set
PDF
8086 instruction set
DOCX
8086 addressing modes
PDF
8086 instruction set (with simulator)
PPTX
Chapter 4 addressing mode in microprocessor.pptx
PPTX
Addressing mode of 80286 microprocessor
PPTX
Chapter 1 archietecture of 8086
PPTX
OPERAND ADDRESSING MODESOPERAND ADDRESSING MODES
PPTX
Mastering Assembly Language: Programming with 8086
Microprocessor Chapter3 hawassa Univetsi
8086 addressing modes
8086addressingmodes-200319141110.pdf
Addressing modes of 8086
All-addressing-modes of the 80386 /microprocessor.pptx
Adressing modes of 8086
Notes 8086 instruction format
instructionsetsofjdtufgmictfgfjh8086.pptx
Addressing Modes Of 8086
a wounderful lecture on microprocessor 8086
8086 instruction set
8086 instruction set
8086 instruction set
8086 addressing modes
8086 instruction set (with simulator)
Chapter 4 addressing mode in microprocessor.pptx
Addressing mode of 80286 microprocessor
Chapter 1 archietecture of 8086
OPERAND ADDRESSING MODESOPERAND ADDRESSING MODES
Mastering Assembly Language: Programming with 8086
Ad

More from Mohansonale1 (6)

PPTX
PPT
Arch 8086
PPT
Pin8086
PPTX
8086 ppt
PPT
Memory comp
PPTX
Process.org
Arch 8086
Pin8086
8086 ppt
Memory comp
Process.org

Recently uploaded (20)

PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
PDF
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
PPT
Mechanical Engineering MATERIALS Selection
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
Current and future trends in Computer Vision.pptx
PPTX
Geodesy 1.pptx...............................................
PPTX
Construction Project Organization Group 2.pptx
PPT
Project quality management in manufacturing
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
additive manufacturing of ss316l using mig welding
PDF
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PDF
PPT on Performance Review to get promotions
PPTX
Internet of Things (IOT) - A guide to understanding
PDF
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
DOCX
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
PPTX
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
PDF
Well-logging-methods_new................
PPTX
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
PDF
Automation-in-Manufacturing-Chapter-Introduction.pdf
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
BMEC211 - INTRODUCTION TO MECHATRONICS-1.pdf
Evaluating the Democratization of the Turkish Armed Forces from a Normative P...
Mechanical Engineering MATERIALS Selection
CH1 Production IntroductoryConcepts.pptx
Current and future trends in Computer Vision.pptx
Geodesy 1.pptx...............................................
Construction Project Organization Group 2.pptx
Project quality management in manufacturing
Foundation to blockchain - A guide to Blockchain Tech
additive manufacturing of ss316l using mig welding
Unit I ESSENTIAL OF DIGITAL MARKETING.pdf
PPT on Performance Review to get promotions
Internet of Things (IOT) - A guide to understanding
SM_6th-Sem__Cse_Internet-of-Things.pdf IOT
ASol_English-Language-Literature-Set-1-27-02-2023-converted.docx
FINAL REVIEW FOR COPD DIANOSIS FOR PULMONARY DISEASE.pptx
Well-logging-methods_new................
CARTOGRAPHY AND GEOINFORMATION VISUALIZATION chapter1 NPTE (2).pptx
Automation-in-Manufacturing-Chapter-Introduction.pdf

8086 add mod

  • 2.  Select the appropriate addressing mode to accomplish a given task.  Detail the difference between addressing memory data using real mode and protected mode operation.  Describe the sequence of events that place data onto the stack or remove data from the stack.  Explain how a data structure is placed in memory and used with software.
  • 3.  An addressing mode means the method by which an operand can be specified in a register or a memory location  8086provide a seven Addressing Modes: (1) Register Addressing (2) Immediate Addressing (3) Direct Addressing (4) Register Indirect Addressing (5) Based Indexed Addressing (6) Register Relative Addressing (7) Relative Based Indexed Addressing
  • 4. 8-bit 8-bit 8-bit OP CODE OPERAND byte 1 to 2 byte  An opcode is a short of “operation code”  An opcede is a singe instruction can be executed by the CPU. In machine language it is a binary or hexadecimal value such as B7 loaded into the instruction register.  In assembly language mnemonic form an opcode is a command such as MOV or ADD or JMP.  Example: MOV AX, 1000H ; MOV is the opcode. ; AX (register) is an operand.  Operands are manipulated by the opcode. In this example, the operands are the register AX and the value 1000H.
  • 5.  Transfers a copy of a byte or word from the source register or memory location to the destination register or memory location.  Use of registers to hold the data to be manipulated  Memory is not accessed when this addressing mode is executed  Example: MOV BX, DX MOV ES, AX ADD AL, BH ; copy the contents of DX into BX ; copy the contents of AX into ES ; add the contents of BH to contents of AL destination registers must have the same size
  • 7.  Transfers the source, an immediate byte or word of data, into the destination register or memory location  The source operand is a constant  The operand comes immediately after the opcode  For this reason, this addressing mode executes quickly  Immediate addressing mode can be used to load information into any of the registers except the segment registers and flag registers.
  • 8.  Example: MOV AX, 2550H MOV CX, 625 MOV BL, 40H ; move 2550H into AX ; load the decimal value 625 into CX ; load 40H into BL  The data must first be moved to a general-purpose register and then to the segment register.  Example: MOV AX, 2550H MOV DS, AX MOV DS, 0123H ; illegal instruction!
  • 10. Moves a byte or word between a memory location and a register. The data is in some memory location(s) and the address of the data in memory comes immediately after the instruction This address is the offset address Example: MOV AX, [2400] ; move contents of DS:2400H into AX The physical address is calculated by combining the contents of offset location 2400 with DS
  • 11.  Example: Find the physical address of the memory location and its contents after the execution of the following, assuming that DS = 1512H. AL, 3BH [3518], AL MOV MOV Sol ution :  First 3BH is copied into AL,  Then in line two, the contents of AL are moved to logical address DS:3518 which is 1512:3518.  Shifting DS left and adding it to the offset gives the physical address of 18638H (15120H + 3518H = 18638H).  After the execution of the second instruction, the memory Prof. Fayleoz Fc. aMa.tEil-oSonusy with address 18638H will contain the value 3BH.
  • 13. Transfers a byte or word between a register and a memory location addressed by an index or base register The address of the memory location where the operand resides is held by a register The registers used for this purpose are SI, DI, and BX They must be combined with DS in order to generate the 20-bit physical address.
  • 14. Example: MOV AX, [BX] ; moves into AX the contents of the memory location pointed to by DS:BX, 1000:1234 The physical address is calculated as 1000x10+1234=11234H The same rules apply when using register SI or DI. Example: MOV CL, [SI] MOV [DI], AH ; move contents of DS:SI into CL ; move contents of AH into DS:DI
  • 15.  Example:  Assume that DS = 1120, SI = 2498, and AX = 17FE Show the contents of memory locations after the execution of MOV [SI], AX ; move contents of AX into DS:SI  Solution: The contents of AX are moved into memory locations with logical address DS:SI and DS:SI + 1; The physical address starts at DS (shifted left) + SI = 13698. According to the little endian convention, Low address 13698H contains FE, the low byte, High address 13699H will contain 17, the high byte.
  • 17.  Transfers a byte or word between a register and the memory location addressed by a base register (BP or BX) plus an index register (DI or SI).  Combining based and indexed addressing modes.  One base register and one index register are used.  Examples: MOV [BX+DI], CL ; move contents of CL into DS:BX+DI  Physical Address = DSx10 + BX+DI MOV CH, [BX+SI] ; move contents of the DS:BX+SI into CH  Physical Address = DSx10 + BX+SI MOV AH, [BP+DI] ; move contents of the SS:BP+SI into AH  Physical Address = SSx10 + BP+DI MOV [BP+SI], AL ; move contents of AL into SS:BP+SI = SSx10 + BP+SI
  • 19.  Moves a byte or word between a register and the memory location addressed by an index or base register plus a displacement.  The data in a segment of memory are addressed by adding the displacement to the contents of a base or an index register (BP, BX, DI, or SI).  Examples: MOV AX, [BX+4] ; move contents of DS:BX+4 into AX  Physical Address = DSx10 + BX+4 MOV CH, [SI+5] ; move contents of the DS:SI+5 into CH  Physical Address = DSx10 +SI+5 MOV AH, [DI+1] ; move contents of the DS:DI+1 into AH  Physical Address = DSx10 + DI+1 MOV [BP+2], AL ; move contents of AL into SS:BP+2 = SSx10 + BP+2
  • 20.  Example:  Assume that DS = 4500, SS = 2000, BX = 2100, SI = 1486, DI =  8500, BP= 7814, andAX = 2512. Show the exact physical memory location where AX is stored in each of the following.All values are in hex. 1 MOV [BX+20], AX 2 MOV [SI+10], AX 3 MOV [DI+4], AX 4 MOV [BP+12], AX  Solution:  Physical Address = segment reg. x 10 + (offset reg.) + displacement 1 DS:BX+20 2 DS:SI+10 3 DS:DI+4 4- SS:BP+12 location 47120 = (12) and 47121 = (25) location 46496 = (12) and 46497 = (25 ) location 4D504 = (12) and 4D505 = (25) location 27826 = (12) and 27827 = (25)
  • 22.  The base relative-plus-index addressing mode is similar to the base-plus-index addressing mode, but adds a displacement besides using a base register and an index register to form the memory address.  This type of addressing mode often addresses a two-dimensional array of memory data.  The data in a segment of memory are addressed by adding the displacement to the contents of a base and an index register (BP, BX, DI, or SI).  Examples: MOV [BX+DI+1], AX ; move contents of AX into DS:BX+DI+1  Physical Address = DSx10 + BX+DI+1H MOV AX, [BX+SI+10]; move contents of the DS:BX+SI+10 into AX PhysicalAddress = DSx10 + BX+SI+10H
  • 23. MOV AH, [BP+DI+3] ; move contents of the SS:BP+SI+3 into AH  Physical Address = SSx10 + BP+DI+3H MOV [BP+SI+6], AL ; move contents of AL into SS:BP+SI+6  Physical Address = SSx10 + BP+SI+6 MOV AX, FILE[BX+DI] ; move contents of the DS:FILE+BX+DI into AX  Physical Address = DSx10 + BX+DI+FILE MOV LIST[BP+SI+4], DH ; move contents of DH into SS:LIST+BP+SI+4 Address = SSx10 +LIST+ BP+SI+4
  • 25. Segment Register CS DS ES SS Offset Register IP SI, DI, BX SI, DI, BX SP, BP The following Table provides a summary of the offset registers that can be used with the four segment registers of the 8086