beautypg.com

Conditional assembly, Conditional assembly directives – Zilog ZUSBOPTS User Manual

Page 272

background image

Conditional Assembly

UM017105-0511

244

Zilog Developer Studio II – ZNEO™
User Manual

If name is specified with the

.ENDWITH

directive, the name must match that used for the

.WITH

directive. The intent is to allow for code readability with some checking by the

assembler.

Examine the following

COMPUTE_PAY

routine.

COMPUTE_PAY:

; Enter with pointer to an EMPLOYEE in R2, days in R1

; Return with pay in R0

LD.SB R0,EMPLOYEE.SALARY(R2)

MUL R0,R1

RET

The preceding routine could be written using the

.WITH

directive as follows:

COMPUTE_PAY:

; Enter with pointer to an EMPLOYEE in R2, days in R1

; Return with pay in R0

.WITH EMPLOYEE

LD.SB R0, SALARY(R2)

MUL R0,R1

RET

.ENDWITH EMPLOYEE

Conditional Assembly

Conditional assembly is used to control the assembly of blocks of code. Entire blocks of
code can be enabled or disabled using conditional assembly directives.

Conditional Assembly Directives

The following conditional assembly directives are allowed:

IF

IFDEF

IFSAME

IFMA

Any symbol used in a conditional directive must be previously defined by an

EQU

or

VAR

directive. Relational operators can be used in the expression. Relational expressions eval-
uate to 1 if true, and 0 if false.

This manual is related to the following products: