One sort of applying this technique of stems is to use the as associative memory - where the content of a storage location is used as an address. Ther rules for resolving elements of a stem variable state that all parts after the first part of a stem are subject to be resolved. As shown in ISDA (the small interactive disassembler in cbttape), which is completely written in Rexx, it works as folllows:

Consider a hexcode sequence containing the following (hex)-characters:
0E1A
this is resolved to:
MVCL R1,R10

Internally it is accomplished by looking for the symbolic representation of x'0E' :
OPCODE.0E.FORMAT = 'RR' ; OPCODE.0E.MNEMO = 'MVCL'

the Rexx-instructions are:
Inst_Form = getInstruction_Format(hexaopcod)
.
.
.
getInstruction_Format:
arg hxo /* hexadecimal Opcode */
oform = opcode.hxo.fomat
return oform  /*returns  'RR'*/

.
.
.
IMnemo = opcode.hxo.mnemo /* IMenmo = 'MVCL' */

----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: GET IBM-MAIN INFO
Search the archives at http://bama.ua.edu/archives/ibm-main.html

Reply via email to