HLASM Language Reference
Previous topic | Next topic | Contents | Contact z/OS | Library | PDF


Ordinary USING instruction

HLASM Language Reference
SC26-4940-06

The ordinary USING instruction format specifies a base address and one or more base registers.
Read syntax diagramSkip visual syntax diagram
Ordinary USING

>>-+-----------------+--USING--+-base-------------+------------->
   '-sequence_symbol-'         '-(base-+------+-)-'   
                                       '-,end-'       

   .----------------.   
   V                |   
>----,base_register-+------------------------------------------><

sequence_symbol
Is a sequence symbol.
base
Specifies a base address, which can be a relocatable or an absolute expression. The value of the expression is 0 - 231-1.
end
Specifies the end address, which can be a relocatable or an absolute expression. The value of the expression is 0 - 231-1. The end address can exceed the (base address + default range) without error. The end address must be greater than the base and must have the same relocatability attribute.
The resolvable range of a USING with an 'end' operand is
base,MIN(4095,end-1)
Thus USING base,reg is equivalent to USING (base,base+4096),reg.
base_register
Is an absolute expression whose value represents general registers 0 through 15.

The default range is 4096 per base register.

The assembler assumes that the base register denoted by the first base_register operand contains the base address base at execution time. If present, the subsequent base_register operands represent registers that the assembler assumes contain the address values base+4096, base+8192, and so on.

For example:
         USING           BASE,9,10,11
has the logical equivalent of:
         USING           BASE,9
         USING           BASE+4096,10
         USING           BASE+8192,11
In another example, the following statement:
         USING           *,12,13

tells the assembler to assume that the current value of the location counter is in general register 12 at execution time, and that the current value of the location counter, incremented by 4096, is in general register 13 at execution time.

Go to the previous page Go to the next page




Copyright IBM Corporation 1990, 2014