Content deleted Content added
Guy Harris (talk | contribs) →Assembler instructions: Capital letters at the beginning of a sentence, but not at the beginning of clauses not at the beginning of the sentence. |
Guy Harris (talk | contribs) →High Level Assembler: Wrap more instances of "USING" in <code> and </code>. |
||
Line 284:
</ref> to Assembler H into the supported product.}} and is considered the "father of high level assembler".<ref>{{cite web |title=Guide to the John R. Ehrman collection |id=X5621.2010 |publisher=[[Online Archive of California]] |url=https://oac.cdlib.org/findaid/ark:/13030/c8xk8mnr/ |access-date=2022-10-15 |url-status=live |archive-url=https://web.archive.org/web/20221015170120/https://oac.cdlib.org/findaid/ark:/13030/c8xk8mnr/ |archive-date=2022-10-15}} [https://web.archive.org/web/20220419202358/http://pdf.oac.cdlib.org/pdf/camvchm/102733967-Ehrman.pdf]</ref>
Despite the name, HLASM on its own does not have many of the features normally associated with a [[high-level assembler]]. The name may come from the additional macro language capabilities, such as the ability to write user-defined functions. The assembler is mostly similar to Assembler H and Assembler(XF), incorporating the [[SLAC]] (Stanford Linear Accelerator) modifications. Among features added were an indication of <code>CSECT</code>/<code>DSECT</code> for ___location counter, dependent{{efn|A dependent <code>USING</code> is one that specifies a relocatable expression instead of a list of registers:
<syntaxhighlight lang="text">
USING IHADCB,SYSPRINT
Line 291:
...
</syntaxhighlight>
}} and labelled{{efn|A labelled <code>USING</code> is one that only affects instructions that explicitly refer to it by qualifying an expression with a label:
<syntaxhighlight lang="text">
LA R4,SYSIN
Line 303:
...
</syntaxhighlight>
}} <code>USING</code> statements, a list of <code>USING</code> statements currently active, an indication of whether a variable is read or written in the cross-reference, and allowing mixed-case symbol names.<ref>{{cite web
| title = IBM HIGH LEVEL ASSEMBLER/MVS & VM & VSE
| id = 292-244
|