## ALP Programming Guide and Reference

[prev][next][parent][TOC]

### EQU (Assign an Expression to a Symbolic Constant)

The EQU directive assigns the value of Expression to Name.

Syntax

    Name   EQU   Expression

Remarks

If Name has already been defined as a Numeric-EquateName and its currently assigned value differs from the value given by Expression, an error message is produced. Unlike symbols created with the = (equal sign) directive, symbols created with the EQU directive cannot be redefined with different values.

The Expression entry must evaluate to an Operand-ExpressionType. If an evaluation error occurs or if the Expression evaluates to one of the following Operand-ExpressionType s:

Indexed-ExpressionType
Floating-Point-ExpressionType
Compound-ExpressionType
Duplicated-ExpressionType

then the Identifier is converted to a Text-EquateName. Otherwise, the Identifier is converted to a Numeric-EquateName.

See also EQU and =.

Example

    A      EQU     < BP   + >    ; explicit   text   literal ,   A   is   a   text   equate
    B      EQU     BP   +      ; invalid   expression   -   text   equate   equivalent   to   A
    B      EQU     1   +   2     ; valid   expression   -   but   still   a   text   equate   < 1   +   2 >
    C      EQU     1   +   2     ; converted   to   assembler   symbolic   constant ,   value   =   3
    C      EQU     < 3 >       ; illegal ,   cannot   convert   back   to   text   equate