Introduction To Microprocessor 8086: Objective
Introduction To Microprocessor 8086: Objective
Objective:
Introduction to 8086 Instruction Set and it implementation in EMU 8086 (Microprocessor
Emulator).
Introduction:
Pointers and Index Registers:
The registers in this group are all 16 bits wide and, unlike the data registers, cannot be accessed
as a low or high byte. These registers are used as memory pointers. For example, the instruction
MOV AH, [SI] has the word interpretation "Move the byte whose address is contained in register
SI to register AH". SI is thus interpreted as "pointing" to the desired memory location. The
brackets around SI are used to indicate the contents of memory pointed to by SI and not the
value of SI itself.
SI - source index register:
SP - stack pointer:
Instruction Set:
What is instruction set? When we talk to some person we need to talk in the language which that
person is able to understand. If we talk in a language that is not understandable by that person
he will not be able to follow our words and will not be able to reply us or fulfill the task we are
asking him to do. This is because we are not understandable to him which means that we are not
following his instruction set. Same is the case with microprocessor. If the microprocessor is able
to understand our words he will be able to perform our said tasks otherwise will not be able to
do it. That is only possible if we talk to microprocessor in its language i.e. its INSTRUCTION SET.
Each microprocessor has its own instruction set.
ADD:
It adds the source operand to destination operand and places the result in destination. But source
and destination operands must watch and only one of them can be in memory. Carry is stored in
carry flag (CF).
SUB:
Lab Tasks
Task 1:
Write and assemble a program to load register AX with value 99H. Then from register AX move it
to BX, CX, and DX. Use the simulator to single-step the program and examine the registers.
Task 2:
Write and assemble a program to add all the single digits of your ID number and save the result
in Accumulator. Then use the simulator to single-step the program and examine the registers.
Task 3:
Subtraction of two 8 bit numbers and placed the result in accumulator register.
Task 4:
Addition of first ten natural numbers by using INC and ADD instruction.