beautypg.com

Structured assembly processing – Zilog Z8F0130 User Manual

Page 347

background image

UM013037-1212

Structured Assembly Processing

Zilog Developer Studio II – Z8 Encore!

User Manual

323

The

.$CONTINUE

assembler directive is optional. It can be specified an arbitrary

number of times between the

.$WHILE

and

.$WEND

directives.

Any valid assembler statement can appear in the statements sections of the structured
assembly test directives. This means, among other things, that structured assembly test
directives can be nested. The structured assembly test directives can be nested up to
255 levels.

Nested

.$BREAK

and

.$CONTINUE

directives are associated with the most recent

.$WHILE

directive.

There is no preset limit on the number of statements that can appear in the statements
sections; there can be any number of assembler statements in each statements section,
including zero. The operating system file system might impose limitations on file
sizes, and the user must consult the appropriate operating system users guide for such
limitations.

The

.$WHILE

and

.$WEND

directives must be coded in matching pairs. That is, it is

not legal to code a

.$WHILE

directive without a matching

.$WEND

directive appearing

later in the source module nor is it legal to code an

.$WEND

directive without a match-

ing

.$WHILE

directive appearing earlier in the source module.

The

.$BREAK

and

.$CONTINUE

assembler directives can only appear between

enclosing

.$WHILE

and

.$WEND

directives (or between

.$REPEAT

and

.$UNTIL

directives). It is not valid for the

.$BREAK

and

.$CONTINUE

directives to appear in

any other context.

The

.$BREAK

directive has an optional

.$IF

conditional parameter.

The

.$CONTINUE

directive has an optional

.$IF

conditional parameter.

None of the

.$WHILE

,

.$BREAK

,

.$CONTINUE

, and

.$WEND

assembler directives can

be labeled. If a label is specified, a warning message is issued, and the label is dis-
carded.

Structured Assembly Processing

The following sections describe the assembly-time processing of structured assembly
directives:

Validity Checks

– see page 323

Sequence of Operations

– see page 324

Validity Checks

The following validity checks are performed on the structured assembly block input data.
Unless otherwise specified, violations cause the assembly to fail.