beautypg.com

Exiting a macro, Labels, E the – Zilog ZUSBOPTS User Manual

Page 278: Section on, Rmation, see the

background image

Labels

UM017105-0511

250

Zilog Developer Studio II – ZNEO™
User Manual

LD ARG0,ARG1

ELSE

LD ARG0,ARG2

ENDIF

ENDMACRO MISSING_ARG

Invocation

MISSING_ARG R1, ,R2 ; missing second arg

Result

LD R1,R2

IFMA

refers to argument numbers that are one based (that is, the first argument is numbered

one).

Exiting a Macro

The

MACEXIT

directive is used to immediately exit a macro. No further processing is per-

formed. However, the assembler checks for proper

if

-

then

conditional directives. A

MACEXIT

directive is normally used to terminate a recursive macro.

The following example is a recursive macro that demonstrates using

MACEXIT

to termi-

nate the macro.

Example

RECURS_MAC: MACRO ARG1,ARG2

IF ARG1==0

MACEXIT

ELSE

RECURS_MAC ARG1-1, ARG2

DB ARG2

ENDIF

ENDMACRO RECURS_MAC

RECURS_MAC 1, ’a’

Labels

Labels are considered symbolic representations of memory locations and can be used to
reference such memory locations within an expression. Labels can be anonymous, local,
imported or exported by directive, and be contained within a defined space, as described
below.

Note:

This manual is related to the following products: