Machine Control Instructions in Microprocessor

29 Jun, 2021
These type of instructions control machine functions such as Halt, Interrupt, or do nothing. This type of instructions alters the different type of operations executed in the processor. 
Following are the type of Machine control instructions:  
1. NOP (No operation)
2. HLT (Halt)
3. DI (Disable interrupts)
4. EI (Enable interrupts)
5. SIM (Set interrupt mask)
6. RIM (Reset interrupt mask)
 
NOP (No operation) –  
NOP (No operation) –  
Opcode- NOP
Operand- None
Length- 1 byte
M-Cycles- 1
T-states- 4
Hex code- 00
It is used when no operation is performed. No flags are affected during the execution of NOP. The instruction is used to fill in time delay or to delete and insert instructions while troubleshooting.  HLT (Halt and enter wait state) –  
It is used when no operation is performed. No flags are affected during the execution of NOP. The instruction is used to fill in time delay or to delete and insert instructions while troubleshooting.  
It is used when no operation is performed. No flags are affected during the execution of NOP. The instruction is used to fill in time delay or to delete and insert instructions while troubleshooting. 
 
HLT (Halt and enter wait state) –  
Opcode- HLT
Operand- None
Length- 1 byte
M-Cycles- 2 or more
T-states- 5 or more
Hex code- 76
The Microprocessor finishes executing the current instruction and halts any further execution. The contents of the registers are unaffected during the HLT state.  DI (Disable interrupts) –  
The Microprocessor finishes executing the current instruction and halts any further execution. The contents of the registers are unaffected during the HLT state.  
The Microprocessor finishes executing the current instruction and halts any further execution. The contents of the registers are unaffected during the HLT state. 
 
DI (Disable interrupts) –  
Opcode- DI
Operand- None
Length- 1 byte
M-Cycles- 1
T-states- 4
Hex code- F3
Disable interrupt is used when the execution of a code sequence cannot be interrupted. For example, in critical time delays, this instruction is used at the beginning of the code and the interrupts are enabled at the end of the code. The 8085 TRAP cannot be disabled.  EI (Enable interrupts) –  
Disable interrupt is used when the execution of a code sequence cannot be interrupted. For example, in critical time delays, this instruction is used at the beginning of the code and the interrupts are enabled at the end of the code. The 8085 TRAP cannot be disabled.  
Disable interrupt is used when the execution of a code sequence cannot be interrupted. For example, in critical time delays, this instruction is used at the beginning of the code and the interrupts are enabled at the end of the code. The 8085 TRAP cannot be disabled. 
 
EI (Enable interrupts) –  
Opcode- EI
Operand- None
Length- 1 byte
M-Cycles- 1
T-states- 4
Hex code- FB
After a system reset or the acknowledgement of an interrupt, the Interrupt Enable the flip-flop is reset, thus disabling the interrupts.  SIM (Set interrupt mask) –  
After a system reset or the acknowledgement of an interrupt, the Interrupt Enable the flip-flop is reset, thus disabling the interrupts.  
After a system reset or the acknowledgement of an interrupt, the Interrupt Enable the flip-flop is reset, thus disabling the interrupts. 
 
SIM (Set interrupt mask) –  
Opcode- SIM
Operand- None
Length- 1 byte
M-Cycles- 1
T-states- 4
Hex code- 30
This SIM instruction is used to implementation of different interrupts of 8085 microprocessor like RST 7.5, 6.5 and 5.5 and also serial data output. It does not affect TRAP interrupt.  RIM (Reset interrupt mask) –  
This SIM instruction is used to implementation of different interrupts of 8085 microprocessor like RST 7.5, 6.5 and 5.5 and also serial data output. It does not affect TRAP interrupt.  
This SIM instruction is used to implementation of different interrupts of 8085 microprocessor like RST 7.5, 6.5 and 5.5 and also serial data output. It does not affect TRAP interrupt. 
 
RIM (Reset interrupt mask) –  
Opcode- RIM
Operand- None
Length- 1 byte
M-Cycles- 1
T-states- 4
Hex code- 20
This is a multipurpose instruction used to read the status of 8085 interrupts 7.5, 6.5, 5.5 and to read serial data input bit.  
This is a multipurpose instruction used to read the status of 8085 interrupts 7.5, 6.5, 5.5 and to read serial data input bit.  
This is a multipurpose instruction used to read the status of 8085 interrupts 7.5, 6.5, 5.5 and to read serial data input bit.  
 
varshagumber28
microprocessor
Computer Organization & Architecture
GATE CS
microprocessor
Writing code in comment?
Please use ide.geeksforgeeks.org,
generate link and share the link here.