As interrupções mascaráveis são interrupções externas às quais a CPU pode não responder. Se a CPU responde à interrupção mascarável depende da configuração do bit IF do registrador de flag.
Quando a CPU detecta a informação de interrupção mascarável, se IF = 1, a CPU responde à interrupção após executar a instrução atual e inicia o processo de interrupção; se IF = 0, ela não responde à interrupção mascarável.
A informação de interrupção mascarável vem de fora da CPU, e o código do tipo de interrupção é enviado à CPU por meio do barramento de dados e o código do tipo de interrupção da interrupção interna é gerado dentro da CPU.
A razão para definir IF como 0 durante o processo de interrupção é que depois de entrar no manipulador de interrupção, outras interrupções mascaráveis são proibidas.
Se você precisa lidar com interrupções mascaráveis no manipulador de interrupção, você pode usar as instruções para definir IF.
Instruções para definir IF fornecidas pelo 8086CPU: sti, defina IF = 1; cli, defina IF = 0
Referência: << Linguagem de montagem >> Wang Shuang