htalogo2.gif

z/OS Assembler Programming Part 1: Beginnings - Topical Outline

Day One

Fundamentals

Programming concepts

Source, Object, and Load Modules

Memory and Data Representation

Addressing

The CPU

Computer Exercise: Setting Up For Programming

Machine Instruction Formats

Base / Displacement Addresses

Assembler Language and the High Level Assembler (HLASM)

Basic Program Structure Requirements

Computer Exercise: Coding, Assembling, Linking, Running

Data Description, Moving Data, Record Processing

Defining Constants and Work Areas (DS and DC Statements for

Character Type Data)

MVC instruction

Instruction Styles and Formats

Introduction to Branching

Introduction to Record Processing

Data Organization

DCB Macros

OPEN, GET, PUT, CLOSE Macros

Record Processing - An Example

Computer Exercise: File To File Program

Compares, Branches, and Linkages

Record Layouts

Programming Techniques: MVC

CLC Instruction and the Condition Code

BC, BCR Instructions

Extended mnemonics

BAS, BASR, BAL, BALR, IPM Instructions

 

Day Two

More on Addressability

What Can Go Wrong?

Storage Protect Keys

Computer Exercise: List Fields From A Record

Packed Decimal Arithmetic

Zoned Decimal Format

Packed Decimal Format

DC and DS for Zoned and Packed Type Data

Packed Decimal Instruction Set: PACK, UNPK, ZAP, CP, AP, SP, MP, DP

Arithmetic Concerns

Significant digits

Keeping Track of Decimal Points

Computer Exercise: Packed Decimal Calculations

More Assembler and Arithmetic Concepts

Redefining Storage

Creating Data Structures

The Assembly Listing Components

Introduction to Debugging

Rounding

MVO - Move With Offset

SRP - Shift and Round Packed

Computer Exercise: Half-Adjusting Data

 

Day Three

Editing Packed Decimal Fields

DS / DC for Hexadecimal Data

"ED" Instruction

Edit Patterns

Computer Exercise: Edit Packed Decimal Data

A Deeper Look at Instruction Formats

DC / DS for Binary Data Type

Addresses in Instructions

Explicit Coding - Review

Tables

LA Instruction

Instruction Formats (SS, RR, RX)

MVI, CLI Instructions

Instruction Formats (SI)

MVN, MVZ Instructions

Computer Exercise: Using Immediate Instructions

Binary Integer Data

Binary Integer Data Formats

Twos Complement

DC/DS for Fullword, Halfword, and Doubleword Binary Data

Boundary Alignment

CVB, CVD Instructions

L, LR, ST Instructions

A, AR, S, SR, C, CR, MR, M, DR, D Instructions

Concerns Of Working With Binary Integers

Working With Binary Numbers - An Example

Computer Exercise: Binary Arithmetic Computations

 

Day Four

More Binary Instructions

Compare Instructions

LPR, LNR, LCR Instructions

"Logical Arithmetic": AL, ALR, CL, CLR, SL, SLR

Halfword Instructions: AH, CH, LH, MH, SH, STH

EDMK

EDMK and floating dollar signs

Computer Exercise: Floating Dollar Sign

Loops and Tables

Literals

LTORG

Address Constants

EQU - Equate Symbol

Loop Control

Tables

BCT, BCTR, BXLE, BXH, IC, STC

Computer Exercise: Table Processing

 

Day Five

Multiple base registers, DSECTS, ORG

STM, LM

Multiple Base Registers

CNOP

Dummy sections - DSECTs

ORG

Computer Exercise: Using DSECTs

Working With Bits

O, OC, OR, OI, N, NC, NR, NI, X, XC, XR, XI

Sorting Tables

LTR, TM Instructions

More on EQU

Computer Exercise: Sorting a Table

Shift Instructions

SRL, SRA, SLL, SLA, SRDL, SRDA, SLDL, SLDA Instructions

Code Fragment: Display Bit String

Translate

Instruction Set: TR

Code Fragment: Display Hex String

Code Fragment: Direct Access to a Table

Computer Exercise: Build a Table Dynamically

TRT and EX

TRT - Translate and Test

EX - Execute

TRT and EX

Strings

String Handling

ICM, CLM, STCM Instructions

MVCL, CLCL Instructions

MVCIN Instruction

Setting Addressing Mode

Addressing Mode

AMODE and RMODE

BASSM - Branch And Save And Set Mode

BSM - Branch and Set Mode

 

These Materials © Copyright 2012 by Steven H. Comstock

Materials version: V14.x

 

Course Objectives
Course Description
Home page