SHASM Conditional Assembly Directives

The following table shows the conditional assembly directives.

Directive Syntax Description
.ASSIGNA
<preprocessor variable>[:]
.ASSIGNA <value>
Defines an integer preprocessor variable; the defined variable can be redefined.
.ASSIGNC
<preprocessor variable>[:]
.ASSIGNCD<character string>
Defines a character preprocessor variable; the defined variable can be redefined.
.AIF
.AELSIF
.AELSE
.AENDI
.AIF <condition1>
<Source statements assembled if condition1 is satisfied>
.AELSIF <condition2>
<Source statements assembled if condition1 is not satisfied,
but condition2 is satisfied>
.AELSE
<Source statements assembled if neither condition1
nor condition2 is satisfied>
.AENDI
Determines whether or not to assemble a part of a source program according to the specified condition: When the condition is satisfied, the statements after the .AIF are assembled; When not satisfied, the statements after the .AELSE are assembled.
.ERROR or .AERROR
.ERROR[<expression>[,<expression>...]]
Reports error detected at assembly time by user code. The alternate spelling .AERROR is also supported
.AREPEAT
.AENDR
.AREPEATD<count>
<Source statements iteratively assembled>
.AENDR
Repeats assembly of a part of a source program between .AREPEAT and .AENDR the specified number of times.
.AWHILE
.AENDW
.AWHILE <condition>
<Source statements iteratively assembled>
.AENDW
Assembles a part of a source program between .AWHILE and .AENDW iteratively while the specified condition is satisfied.
.EXITM
.EXITM
Terminates .AREPEAT or .AWHILE iterated expansion.
.ALIMIT
.ALIMITD<maximum count>
Specifies the upper limit value for expansion of the AWHILE directive in the preprocessor.

See Also

SHx Series Assembler Directives | SHASM Section and Location Directives | SHASM Symbol Handling Directives | SHASM Data and Data Area Directives | SHASM Function-Definition Directives | SHASM Debug Information Directives | SHASM Listing Directives | SHASM Macro Directives

 Last updated on Thursday, April 08, 2004

© 1992-2003 Microsoft Corporation. All rights reserved.