Verhoef Training Europe.

11B Kingsmead Square, Bath, BA1 2AB, UK
Phone:+44 (0)1753 852 233 Fax: +44 (0)1753 840 190



Assembler Language




AUDIENCE:   New System Programmers, Technical Support and Software Programmers and Application Programmers who need the ability to write and debug Assembler Language programs and better understand the software that their installation uses.

PREREQUISITES:   Knowledge of the internal organization and operation of the system/370 series including 43xx and 30xx machines and hexadecimal arithmetic is recommended. Previous Programming experience recommended.

DURATION:   4 Days

APPROACH:   This class is taught by lecture with hands-on workshops

OBJECTIVES:   After completing this course students should be able to:



  • Develop a better understanding of the machine and how it processes instructions.
  • Develop the skills to write assembler programs, particularly those small functions which will increase efficiency of their corporation's computing throughput.
  • Gain a practical introduction to the essential operating system interfaces with Assembler.
  • Enhance their diagnostic skills.
  • Improve their dump analysis skills.

COURSE CONTENT:  

  1. CONTROL SECTION

    • Source Code Definitions; Object Modules, and Load Modules

      Control Section Definition
      START Command Definition
      CSECT Command Definition
      Setting up Addressability in a Control Section
      USING Statement
      BASR Instruction (Branch and Save Register)
      Multiple Base Register Specifications
      MVC Move Character Instruction
      LA Load Address Instruction
      Symbolic Address
      Base Addressing
      Displacement Calculations
      Index Addressability
      MVS Move Immediate
      LITERALS
      EQUATES


  2. DATA DEFINITIONS

    Define Constant

    Binary
    Characters
    Hexadecimal
    Fixed Point
    Addressing

    Operand Subfields, Length Attributes, Constant Alignment, Padding, Types, Duplication Factor Expressions, Bit length Modifier, Y CONS, A CONS, V CONS

    Define Storage


  3. INSTRUCTION SET




    CLC:
    Compare Logical Character
    B:
    Branch Instruction Format
    CLI:
    Compare Logical Integer
    STM:
    Storage Multiple
    IC:
    Insert Character
    STC:
    Store Character
    L:
    Load
    LH:
    Load Halfword
    LR:
    Load Register
    SH:
    Subtract Halfword
    ST:
    Store
    LTR:
    Load and Test
    DSECT:
    Dummy Section


    How to Define a Dummy Section.
    What a Dummy Section Is.
    How to Use a Dummy Section.

    DAY 1 WORKSHOP

    Read Card Input Until Last Card, then Output Cards


    OS/390:
    I/O Needs
    DOS:
    I/O Needs
    C:
    Compare Function
    CH:
    Compare Halfword
    CR:
    Compare Register
    BCT:
    Branch on Count
    BCTR:
    Branch on Count Register
    BAL:
    Branch and Link


    BINARY CONVERSION


    PACK:
    Pack
    CVB:
    Convert to Binary
    CVD:
    Convert to Decimal
    UNPK:
    Unpack


    BINARY ARITHMETIC



    AR:
    Add Register
    A:
    Add Instruction
    AH:
    Add Halfword
    SR:
    Subtract Register
    SH:
    Subtract Halfword
    MH:
    Multiply Halfword
    M:
    Multiply
    D:
    Divide
    DR:
    Divide Register

    DAY 2 WORKSHOP

    Sort Data Using A Bubble Sort


    DECIMAL ARITHMETIC




    AP:
    Add Decimal
    CP:
    Compare Decimal
    DP:
    Divide Decimal
    ED:
    Edit
    EDMK:
    Edit and Mark
    MP:
    Multiply Decimal
    SRP:
    Shift and Round Decimal
    SP:
    Subtract Decimal
    ZAP:
    Zero and ADD

    DAY 3 WORKSHOP

    Binary Arithmetic


    LINKAGE INSTRUCTIONS



    BAS/BASR:
    Branch and Save Register

    DAY 4 WORKSHOP

    Packed Arithmetic

© 2007 Verhoef Training