Compartilhar via


IF1 e IF2

O bloco IF1 é avaliado no primeiro passo do assembly.

O bloco IF2 será avaliado em todos os passos do assembly se OPTION:SETIF2 for TRUE.

Sintaxe

IF1;;

IF2;;

Comentários

Confira IF para obter a sintaxe completa.

Ao contrário da versão 5.1, o MASM 6.1 e posterior fazem a maior parte do trabalho no primeiro passo e, em seguida, executam quantos passos subsequentes forem necessários. Por outro lado, o MASM 5.1 sempre é montado em dois passos de origem. Como resultado, talvez seja necessário revisar ou excluir alguns constructos dependentes de passos no MASM 6.1 e posterior.

Diretivas em dois passos

Para garantir a compatibilidade, o MASM 6.1 e posterior dão suporte a diretivas 5.1 que fazem referência a dois passos. Elas incluem .ERR1, .ERR2, IF1, IF2, ELSEIF1 e ELSEIF2. Para constructos de segundo passo, você deve especificar OPTION SETIF2. Sem OPTION SETIF2, as diretivas IF2 e .ERR2 causam um erro:

.ERR2 not allowed : single-pass assembler

O MASM 6.1 e posterior lidam com constructos de primeiro passo de forma diferente. Ele trata a diretiva .ERR1 como .ERR e a diretiva IF1 como IF.

Confira também

Referência das directivas
Gramática BNF do MASM