Home About Courses Schedule Services Webinars Contact Search

Assembler Language Programming Essentials


Duration: 5.0 days

Method: Instructor led, Hands-on workshops

Price: $2750.00

Course Code: MF1030


Application and systems programmers that need to develop or maintain programs using the IBM High Level Assembler.


This course introduces students to the basic skills required to write assembler programs using the IBM High Level Assembler (HLASM). Students learn to use fixed point and decimal (packed) instructions to perform required programming functions. A series of written and lab exercises will be used to reinforce the classroom education. Students will code, assemble and execute a series of programs using character, logical, packed decimal, and binary data instructions with instructor-supplied JCL and test data.


Upon successful completion of this course, the student will be able to:

  • Write High Level Assembler programs that read and write disk/tape files, and generate formatted reports.


Introduction to z/OS, or equivalent experience. TSO/ISPF, or equivalent experience. Basic MVS JCL, or equivalent experience. Previous experience in designing and coding application programs will enhance the results of this course.


  • I. Introduction to Assembler
    • Concept of Machine Language
    • Purpose of the Assembler
    • Machine Language and Assembler Language
    • Coding Rules and Statement Formats
    • Instruction Formats
  • II. Defining Storage Areas and Constants
    • Define Storage (DS) statement
    • Define Constant (DC) statement
    • Types of Constants
    • Definition of Input and Output Records
  • III. Packed Decimal Processing
    • Arithmetic Instructions
    • Comparison Instructions
    • Conversion Instructions
  • IV. Data Movement Instructions
  • V. Assembling and Executing Your Program
    • Assembler Language Control Statements
    • Interpreting the Assembler Output
    • Executing Your Assembler Program
  • VI. Debugging Assembler Programs
    • Abends
    • Dumps
    • Debugging Facilities
  • VII. Conditional Processing
    • Comparison Instructions
    • Branching Instructions
  • VIII. Formatting Output Data
    • Edit Instruction
    • Edit and Mark Instruction
  • IX. Binary Processing
    • Data Loading/Storage
    • Arithmetic Instructions
    • Comparison Instructions
    • Conversion Instructions
  • X. Logical Instructions
    • Flag Fields
    • AND / OR / XOR Instructions
    • TM Instruction
  • XI. Table Processing
    • Table Processing
    • Loop Control
  • XII. Program Linkage
    • Program Entry Sequence
    • Program Exit Sequence
  • XIII. Sequential File Processing
    • Overview
    • DCB Macro
    • OPEN / CLOSE Macros
    • GET / PUT Macros
  • XIV. Program Sectioning
    • Multiple Base Registers
    • CSECTs
    • DSECTs