@iamalokpandey, any single standard resource which supports whatever you have written about the HALT instruction. It seems like coming from some coaching notes where teacher made self-concepts. NO Single Standard Resource contains it Or supports it.
HLT Or Halt:
Stops instruction execution and places the processor in a HALT state. An enabled interrupt (including NMI and SMI), a debug exception, the BINIT# signal, the INIT# signal, or the RESET# signal will resume execution. If an interrupt (including NMI) is used to resume execution after a HLT instruction, the saved instruction pointer (CS:EIP) points to the instruction following the HLT instruction.
When a HLT instruction is executed on an Intel 64 or IA-32 processor supporting Intel Hyper-Threading Technology, only the logical processor that executes the instruction is halted. The other logical processors in the physical processor remain active, unless they are each individually halted by executing a HLT instruction.
The HLT instruction is a privileged instruction. When the processor is running in protected or virtual-8086 mode, the privilege level of a program or procedure must be 0 to execute the HLT instruction.
This instruction’s operation is the same in non-64-bit modes and 64-bit mode.
Source: https://www.felixcloutier.com/x86/hlt
A special instruction, HALT, tells the CPU to stop executing altogether. If the instruction is the "halt" instruction, break out of the fetch/execute loop and exit the program.
HALT | Halt; stop execution of instructions. |
Source: https://people.engr.tamu.edu/djimenez/classes/312-fall21/hw6/hw6.html
During the fetch-decode-execute cycle, the PC would get incremented to the next instruction. The program instructions are executed sequentially until the HALT instruction which stops the program.
Source: https://www.cs.uni.edu/~fienup/cs041s11/lectures/Supplement_MARE_AL.pdf
Usually after an instruction is executed, the program counter is increased by 1, and the whole "fetch-execute" cycle is repeated to execute the next instruction in memory. This process continues until a halt instruction is executed.
The other CPU state consists of the program counter (or PC), which has 12 bits and holds the address of the next instruction to be executed, the run-flag, which is one bit and indicates whether the computer is running (1) or halted (0), and the arithmetic error bit (or AEB), which indicates whether there has been an arithmetic overflow error.
halt -- stops execution (sets the run flag to 0)
If the instruction that is executed is a halt instruction, all that happens is that the run flag (rf) is set to 0, and execution halts.
Source: https://zoo.cs.yale.edu/classes/cs201/fall_2023/lectures/Architecture.html
Program execution halts only if the machine is turned off, some sort of unrecoverable error occurs, or a program instruction(HALT) that halts the computer is encountered. (Source: William Stallings)