In this post, we will discuss the Instruction set and Types of instruction in the 8085 microprocessor through a set of questions and answers.
- What is an instruction?
- What is meant by instruction set?
- What determines the number of bytes to be fetched from memory to execute an instruction?
- In how many categories the instructions of 8085 be classified?
- What are the different types of data transfer operations in 8085 microprocessor?
- Mention the different types of operations possible with arithmetic, logical, branch, and machine control operations.
- What are the different instruction word sizes in 8085?
- Give one example each of 1-byte, 2-byte and 3-byte instructions.
- What an instruction essentially consists of?
- Related Posts (8085 microprocessor based)
What is an instruction?
An instruction is a bit pattern that is decoded inside a microprocessor to perform a specific task or function on a given data.
What is meant by instruction set?
An instruction set is a collection of instructions that a microprocessor can handle.
The Intel 8085 processor has its own instruction set based on its architecture.
What determines the number of bytes to be fetched from memory to execute an instruction?
An instruction normally consists of two fields. These are Opcode and Operand.
Thus, while the system starts executing an instruction, it first decodes the opcode.
After decoding the opcode microprocessor can decide how many more bytes are to be fetched from the memory to execute that instruction. Its minimum value is zero (like RAR) while the maximum value is two (like STA 4059 H).
In how many categories the instructions of 8085 be classified?
Functionally, the instructions can be classified into five groups:
- Data transfer (copy) group
- Arithmetic group
- Logical group
- Branch group
- Stack, I/O and machine control group
What are the different types of data transfer operations in 8085 microprocessor?
The different types of data transfer operations possible in 8085 microprocessor are cited below:
|Type of data transfer||Example||Tasks performed on the execution of the instruction|
|Between two registers||MOV A,D||Copies the content of register D to the accumulator|
|Between a register and a memory location||LDA 8800H||Loads the contents of memory location 8800H in the accumulator|
|Storing a data byte in a register or memory location||MVI C, 60H||Loads register C with the data 60H|
|Between an I/O device and the accumulator||IN PORT1||Transfer data from an input device to the accumulator.|
|Between a register pair and the stack||PUSH B||Store the content of BC reg. pair to the top two memory locations of the stack.|
Here the term ‘data transfer’ is used but data is not actually transferred, it is copied from source to destination.
Mention the different types of operations possible with arithmetic, logical, branch, and machine control operations.
The possible arithmetic operations are addition, subtraction, increment, and decrement.
The logical operations include AND, OR, EXOR, compare, complement.
Branch operations are Jump, Call, Return and Restart instructions.
The machine control operations are Halt, Interrupt, and NOP (no operation).
What are the different instruction word sizes in 8085?
Based on the length of the machine language code, 8085 instructions can be classified into the following three types:
- 1-byte instruction
- 2-byte instruction
- 3-byte instruction
Give one example each of 1-byte, 2-byte and 3-byte instructions.
The examples for 8085 are given below:
- 1-byte instruction : ADD B (Machine code is 80H, which is one byte wide)
- 2-byte instruction : MVI A, 07H ( First byte is 3E H , which is Machine code for MVI A and second byte is 07H, which is data byte)
- 3-byte instruction : LDA 4400H(First byte is 3A H , which is Machine code for LDA, second and third bytes are 00H and 44H respectively which is the address of memory location)
What an instruction essentially consists of?
An instruction comprises an operation code (called ‘opcode’) and the address of the data (called ‘operand’), on which the opcode operates. This is the structure on which instruction is based.
The opcode specifies the nature of the task to be performed by an instruction. Symbolically, an instruction looks like this:
|Operation code or opcode||Address of data or operand|
In 1-byte instruction:
The opcode and the operand are in the same byte.
In 2-byte instruction :
1st byte: Opcode
2nd byte: Operand
In 3-byte instruction:
1st byte: Opcode
2nd byte: Operand or data/ Low order byte of the address
3rd byte: High order byte of the address
Author of this post
This post is co-authored by Professor Saraswati Saha, who is an assistant professor at RCCIIT, a renowned degree engineering college in India. Professor Saha teaches subjects related to digital electronics & microprocessors.
Related Posts (8085 microprocessor based)
FAQs on addressing modes of instructions | execution of an instruction in 8085 microprocessor
Arithmetic Instructions in 8085 Microprocessor for Arithmetic operations: Revision notes
8085 Microprocessor – tutorials (hub)
Microprocessor class notes – PDF download