When the CPU Trap Flag is set (TF=1), the CPU executes this interrupt
after each instruction.

Debuggers which allow you to single-step through the instructions of a
program use this interrupt to recapture execution to display the
registers, memory, etc.

Trapping is turned off (TF=0) upon execution of any INT instruction, so
the INT 01H itself is not executed in single-step fashion.  Upon leaving
the interrupt (via IRET), all flags are restored, thus the next
instruction will be trapped.

The normal way to begin single-stepping is to PUSH a word containing all
the desired flags (including TF=1), PUSH the desired CS and IP address to
execute, then perform an IRET to begin single-stepping at that address.

See Also: INT 03H
- -

INT 01H: Single-Step Interrupt