Previous Topic: Qualifying Program SymbolsNext Topic: Length Attributes


Expression Operators

Standard Operators

The standard operators are:

Operator

Meaning

+

Addition

-

Subtraction

*

Multiplication

/

Division

You can use these operators in any command containing a debug expression.

Special Operators

The percent sign (%) is a special operator that you can use for indirect addressing. With indirect addressing, the address in the expression is not the address of the operand itself, but a pointer to a storage area that contains the address of the operand. When the percent sign precedes a valid debug expression, the content of the expression is used as the address of the target value.

Examples

Assume that register 3 contains the value BF040. You ask for display of the contents of register 3, like this:

list :r3

000BF040                                       *..0.            *

In this example, the command points to the contents of register 3 as the target value for the display:

list %:r3

In response to the command above, the debugger locates the operand address (BF040) in register 3 and lists the contents stored at BF040:

000BF040  000047F0 C0280000 00000000 00000000  *...0............*

Now you ask for display of the contents found at 10C010, the address supplied in the debug expression:

list reca +10

0010C010  000BF000 00000000 00000000 00000000  *..0.............*

In the next example, the relative storage location points to the address of the effective operand. The debugger responds by listing the contents of BF000, the operand address found at RECA+10:

list %(reca+10)

000BF000  D1D6C8D5 40E2D4C9 E3C80000 00000000  *JOHN SMITH......*