2. Introduction to
Emu8086
Is an emulator of the program 8086 microprocessor ,It is developed
with a built-in 8086 assembler. This application is able to run programs
on both PC desktops and laptops. This tool is primarily designed to
copy or emulate hardware.
This tool is primarily designed to copy or emulate hardware.
3. Emulator is a simulation of the processor , which meant that the
actual system hardware never touched directly by the user .
We will work on the model of Intel 8086 processor.
4. The main purpose of a register is to keep a number (variable).
Because registers are located inside the CPU, they are much faster
than memory. Accessing a memory location requires the use of a
system bus, so it takes much longer. Accessing data in a register
usually takes no time.
5. General Purpose Register
1. AX Register (Accumulator):
Can be used as AX= 16bits , AL = 8 bits , AH= 8bits. It’s generally used for
mathematical and logical instructions (The AX often holds the result
after an arithmetic or logic operation).
2. BX Register (Base Index):
It holds the base (offset), which is the address of memory location. It
can be used as BL,BH.
6. General Purpose Register
3. CX Register (Counter):
It contains the count for certain instructions such as Rotate and loop.
4. DX Register (Data Register):
It is used as an extension to the AX register for multiplication, division
arithmetic. It can be used as DL,DH.
7. 4 general purpose registers (AX, BX, CX, DX) are made of two
separate 8 bit registers, for example if AX=
0011000000111001b, then AH=00110000b and AL=00111001b.
therefore, when you modify any of the 8 bit registers 16 bit
register is also updated. if we need to use more bits , here you
can use extension (EAX,EBX,ECX,EDX).
8. General Purpose Register
5. DI Register (Destination Index):
Used to address destination data for use with string instructions.
6. SI Register (Source Index):
Used to address source data for use with string instructions.
7. SP Register (Stack Pointer):
It contains the address within the area of memory called the stack segment.
8. BP (Base Pointer):
Used to address an array of data in the stack.
9. Special Purpose Register
1-IP Register ( Instruction Pointer):
It is used with the code segment register (CS) as CS:IP pair to point to the next
instruction byte to be fetched by the microprocessor.
2. Flags Register:
Each of its bits indicate the current status of the microprocessor and control its
operation.
10. Segment Register
1.CS Register (Code Segment):
Used for addressing memory location in the code segment of the memory where
the executable program is stored.
2. DS Register (Data Segment):
Points to the data segment of the memory where the data is stored .
3. ES Register (Extra Segment):
Refers to a segment In the memory which is an other data segment in the
memory.
4. SS Register (Stack Segment):
Contains the starting address of the currently active stack segment. The stack
segment is the area of memory used for the stack.
11. Example
(Move & ADD & Subtract & Exchange )
MOV to assign value .
MOV AX,5.
ADD to add two values .
ADD AX,3.
Subtract to subtract from value .
SUB AX,2
XCHG to exchange values between registers .
XCHG AX,BX
12. Example-Logic instructions
1- AND
MOV AX,0
MOV BX,1
AND AX,BX
Result will be 0 in Ax register.
2-OR
MOV AX,1
MOV BX,0
OR AX,BX
Result will be 1 in Ax register.
15. CREDITS: This presentation template was created by Slidesgo,
including icons by Flaticon, and infographics & images by Freepik
THANKS!
Do you have any questions?
youremail@freepik.com
+91 620 421 838
yourcompany.com
Please keep this slide for attribution