INSTRUCTION SET OF 8085 Submitted by:- Rahul Sahu M.Sc.- Physics 1 st Sem Guidance by:- Mr. Goverdhan Yadu
Synopsis:- Definition Classification Explain It’s Type with example
What is Instruction set ? The entire group of instructions that a microprocessor supports is called Instruction Set. 8085 has 256 instructions. Each instruction is represented by an 8-bit binary value. These 8-bits of binary value is called Op-Code or Instruction Byte.
Classification of Instruction Set:- Data Transfer Instruction Arithmetic Instructions Logical Instructions Branching Instructions Control Instructions
Data Transfer Instructions:- These instructions move data between registers, or between memory and registers . This instructions is used to copy the data from source to destination or one place to another . While copying, the contents of source are not modified. Example (1) MOV:- This instruction used to copy data . MOV Rd , Rs- This instruction copies the content of Rs to Rd. MOV M , Rs- This instruction copies the content of register Rs to memory location pointed by H-L Pair.
Data Transfer Instructions:- (2). MVI:- Move immediate data to a register or memory location . MVI Rd , #30H- 30H is stored in Register Rd. (3). LDA:- This instruction copies the data from a given 16 bit address to the accumulator.(Load Accumulator) LDA 3000H- Content of memory location 3000H is copied in accumulator . ( 4). LXI:- This instruction loads 16-bit data in the register pair designated in the operand. LXI H , 2034H- 2034H is stored in H-L pair so that it act as memory pointer.
Data Transfer Instructions:- (5). STA:- The Content of accumulator are copied into the memory location . STA 3000H- The content of the accumulator is stored into the memory location 3000H.
Arithmetic Instructions:- Arithmetic Instructions are the instructions which perform basic arithmetic operations such as addition, subtraction and a few more. In 8085 microprocessor, the destination operand is generally the accumulator . These instructions perform the operations like: Addition Subtraction Increment Decrement
Arithmetic Instructions:- Addition:- Any 8-bit number, or the contents of register, or the contents of memory location can be added to the contents of accumulator . The result (sum) is stored in the accumulator. No two other 8-bit registers can be added directly . Example (6).ADD B- it adds the content of accumulator to the content of the register B. (7). ADD M- if content is stored in memory location the it is added with the content stored in accumulator. (8). ADC R or M- Add register or memory to accumulator with carry.
Arithmetic Instructions:- Subtraction:- Any 8-bit number, or the contents of register, or the contents of memory location can be subtracted from the contents of accumulator. The result is stored in the accumulator. Subtraction is performed in 2’s complement form. If the result is negative, it is stored in 2’s complement form. Example (9). SUB R or M- Subtract register or memory from accumulator. (10). SBB R or M- Subtract register or memory from accumulator with borrow. (11). SUI data - Subtract immediate from accumulator.
Arithmetic Instructions:- Increment and Decrement:- The 8-bit contents of a register or a memory location can be incremented or decremented by 1. The 16-bit contents of a register pair can be incremented or decremented by 1. Increment or decrement can be performed on any register or a memory location. Example Increment (12). INR R or M- Increment register or memory by 1 (13). INX H- Increment register pair by 1. Decrement (14 ).DCR R or M- Decrement register or memory by1 (15). DCX H- Decrement register pair by 1.
Logical Instructions:- These instructions perform logical operations on data stored in registers, memory and status flags . The logical operations are: AND OR XOR Rotate Compare Complement
Logical Instructions:- Example (16). ANA R or M- Logical AND register or memory with accumulator. (17). ANI 86H(8 bit data)- Logical AND immediate with accumulator. (18). ORA R or M- Logical OR register or memory with accumulator. (19). ORI 86H(8 bit data)- Logical OR immediate with accumulator. (20). XRI 86H(8 bit data)- XOR immediate with accumulator. (21). RLC- Rotate accumulator left. (22). RRC- Rotate accumulator right. (23). CMP R or M- Compare register or memory with accumulator. (24). CMA- Complement accumulator.
Branching Instructions:- The branching instruction alter the normal sequential flow. These instructions alter either unconditionally or conditionally. Example (25).JMP 2034 H(16 bit address)- Jump unconditionally. (26). JZ 2034 H(16 bit address)- Jump conditionally. (27). CALL 2034 H(16 bit address)- Call unconditionally. (28). CZ 2034 H(16 bit address)- Call conditionally.
Control Instructions:- The control instructions control the operation of microprocessor. Example (29). NOP- No operation is performed. (30). HLT- The CPU finishes executing the current instruction and halts any further execution. (31). DI- Disable interrupt. (32). EI- Enable interrupt.