11.07.2015 Views

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

HLASM: V1R6 Language Ref

SHOW MORE
SHOW LESS
  • No tags were found...

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

Assembler programProcessingConditional Assembly InstructionsThese instructions let you perform general arithmetic and logicalcomputations, and condition tests that can vary the outputgenerated by the assembler. These instructions are described under“Conditional assembly instructions” on page 339.sequenceThe assembler processes the machine and assembler language instructions atdifferent times during its processing sequence. You should be aware of theassembler’s processing sequence in order to code your program correctly.The assembler processes most instructions twice, first during conditional assemblyand, later, at assembly time. However, as shown below, it does some processingonly during conditional assembly.Conditional assembly and macro instructionsThe assembler processes conditional assembly instructions and macroprocessing instructions during conditional assembly. During this processingthe assembler evaluates arithmetic, logical, and character conditionalassembly expressions. Conditional assembly takes place before assemblytime.The assembler processes the machine and ordinary assembler instructionsgenerated from a macro definition called by a macro instruction atassembly time.Machine instructionsThe assembler processes all machine instructions, and translates them intoobject code at assembly time.Assembler instructionsThe assembler processes ordinary assembler instructions at assembly time.During this processing:v The assembler evaluates absolute and relocatable expressions (sometimescalled assembly-time expressions)v Some instructions, such as ADATA, ALIAS, CATTR and XATTR (z/OSand CMS), DC, DS, ENTRY, EXTRN, PUNCH, and REPRO, produceoutput for later processing by programs such as the linker.The assembler prints in a program listing all the information it produces at thevarious processing times discussed above. The assembler also producesinformation for other processors. The linker uses such information at link-edit timeto combine object modules into load modules. At program fetch time, the loadmodule produced by the linker is loaded into virtual storage. Finally, at executiontime, the computer runs the load module.|Relationship of assembler to operating systemHigh Level Assembler operates under the z/OS operating system, the CMScomponent of the z/VM operating system, the z/VSE operating system, andLinux for System z . These operating systems provide the assembler withservices for:v Assembling a source modulev Running the assembled object module as a programIn writing a source module, you must include instructions that request anyrequired service functions from the operating system.Chapter 1. Introduction 7

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!