Instruction Set Classification
An instruction is a binary pattern
designed inside a microprocessor to perform a specific function. The entire
group of instructions, called the instruction
set, determines what functions the microprocessor can perform. These
instructions can be classified into the following five functional categories:
data transfer (copy) operations, arithmetic operations, logical operations,
branching operations, and machine-control operations.
1 Data Transfer Croup
The data
transfer instructions move data between registers or between memory and
registers.
MOV Move
MVI Move Immediate
LDA Load Accumulator
Directly from Memory
STA Store Accumulator
Directly in Memory
LHLD Load H & L
Registers Directly from Memory
SHLD Store H & L
Registers Directly in Memory
An 'X' in
the name of a data transfer instruction implies that it deals with a register
pair (16-bits);
LXI Load Register
Pair with Immediate data
LDAX Load Accumulator
from Address in Register Pair
STAX Store Accumulator
in Address in Register Pair
XCHG Exchange H & L with D
& E
XTHL Exchange Top of
Stack with H & L
2 Arithmetic Group
The
arithmetic instructions add, subtract, increment, or decrement data in
registers or memory.
ADD Add to
Accumulator
ADI Add Immediate
Data to Accumulator
ADC Add to
Accumulator Using Carry Flag
ACI Add immediate
data to Accumulator Using Carry
SUB Subtract from
Accumulator
SUI Subtract
Immediate Data from Accumulator
SBB Subtract from
Accumulator Using Borrow (Carry) Flag
SBI Subtract
Immediate from Accumulator Using Borrow (Carry) Flag
INR Increment
Specified Byte by One
DCR Decrement
Specified Byte by One
INX Increment
Register Pair by One
DCX Decrement
Register Pair by One
DAD Double Register
Add; Add Content of Register
Pair to H
& L Register Pair
3 Logical Group
This
group performs logical (Boolean) operations on data in registers and memory and
on condition flags. The logical AND, OR, and Exclusive OR instructions enable
you to set specific bits in
the
accumulator ON or OFF.
ANA Logical AND with
Accumulator
ANI Logical AND
with Accumulator Using Immediate Data
ORA Logical OR with
Accumulator
OR Logical OR
with Accumulator Using Immediate Data
XRA Exclusive Logical
OR with Accumulator
XRI Exclusive OR
Using Immediate Data
The
Compare instructions compare the content of an 8-bit value with the contents of
the accumulator;
CMP Compare
CPI Compare Using Immediate Data
The
rotate instructions shift the contents of the accumulator one bit position to
the left or right:
RLC Rotate
Accumulator Left
RRC Rotate
Accumulator Right
RAL Rotate Left
Through Carry
RAR Rotate Right
Through Carry
Complement
and carry flag instructions:
CMA Complement
Accumulator
CMC Complement Carry
Flag
STC Set Carry Flag
4 Branch Group
The
branching instructions alter normal sequential program flow, either
unconditionally or
conditionally.
The unconditional branching instructions are as follows:
JMP Jump
CALL Call
RET Return
Conditional
branching instructions examine the status of one of four condition flags to
determine
whether
the specified branch is to be executed. The conditions that may be specified
are as follows:
NZ Not
Zero (Z = 0)
Z Zero
(Z = 1)
NC No
Carry (C = 0)
C Carry
(C = 1)
PO Parity
Odd (P = 0)
PE Parity
Even (P = 1)
P Plus
(S = 0)
M Minus
(S = 1)
Thus, the
conditional branching instructions are specified as follows:
Jumps Calls Returns
INC CNC RNC (No Carry)
JNZ CNZ RNZ (Not Zero)
JM CM RM (Minus)
JP0 CPO RPO (Parity Odd)
JM CM RM (Minus)
JPE CPE RPE (Parity Even)
JP0 CPO RPO (Parity Odd)
Two other
instructions can affect a branch by replacing the contents or the program
counter:
PCHL Move H & L to
Program Counter
RST Special Restart
Instruction Used with Interrupts
5 Stack Instructions
The
following instructions affect the Stack and/or Stack Pointer
PUSH Push Two bytes of
Data onto the Stack
POP Pop Two Bytes of
Data off the Stack
XTHL Exchange Top of
Stack with H & L
SPHL Move content of H
& L to Stack Pointer
6 I/0 instructions
IN Initiate
Input Operation
OUT Initiate Output
Operation
7 Machine Control instructions
EI Enable
Interrupt System
DI Disable
Interrupt System
HLT Halt
NOP No Operation
Related Topics
Privacy Policy, Terms and Conditions, DMCA Policy and Compliant
Copyright © 2018-2024 BrainKart.com; All Rights Reserved. Developed by Therithal info, Chennai.