Assembler courses.
We sometimes give classroom training. Ususally, however, we would
train your
people on the job, in your own office. This enables us to attune the
contents
of the course on the one hand to your knowledgeability on assembler,
and on
the other hand to your specific environment. Moreover, anything
learned can
immediately be checked and/or applied in your own real-life
situation.
Topics to be treated have been classified into six categories,
listed below.
For each course you can make a selection from these standard lists of
topics.
Other topics that may be of special interest to you may be added.
- Introduction and general principles
- Assembler starter
- Assembler for application programmers
- Assembler for experienced programmers
- Assembler - Macro Facility
- Bixoft eXtended Assembler language
Whichever selection you make, we think at least the following
topics need
to be treated:
- Architecture of the computer and the operating system.
Organization of virtual storage, address- and data-spaces,
addressing modes
and residency modes, calling mechanisms and the linkage stack.
- Instructions.
All unprivileged instructions from IBM's 'Principles of Operation'.
That is to say:
- General Instructions.
- Decimal Instructions.
- Floating-Point Instructions.
- Relevant Control Instructions.
- The most relevant standard-macros from:
- Assembler Services Reference.
- Macro Instructions for Data Sets.
- Coding techniques and structured programming.
Modularization, segmentation, CSECTS and DSECTS, subroutines,
memory management, in-line and out-of-line error handling,
exceptions,
abends.
- Reusability, reenterability, refreshability.
The differences between these kinds of programs, and their
application. The
consequences for the way one codes such programs.
- Assembler directives.
Usage of CNOP for alignment, DROP and USING for addressability.
LTORG, DC and
DS for organizing storage areas, variables and constants. EQU for
naming
constants and addresses.
- Use of macros and conditional assembly.
Conditional assembly in open code, optimising, debugging with
SNAP-dumps.
The application of macros in conjunction with access methods.
- Design of macros.
Use of macros versus copy members. What lends itself for
macrofication.
Interface considerations. Documentation of macros. Directing
expansion with
parameters. Lists of parameters. Location of macro: in the source or
in a
macro library?
The topics for this course have been subdivided into four chapters:
- Basic computing knowledge
- Architectur of machine and operating system
- Most important control blocks
- Literature
- Basic computing knowledge
- Components: processor, storage, peripherals
- Instruction processing
- Sequentially
- Conditionally
- Interrupts
- Receipt
- Return
- Status information
- Boolean logic
- Truth tables
- AND, OR, XOR, NOT
- Implication, equivalence
- Multi-tasking
- Synchronisation
- Serialisation
- Semaphores
- Lock-out
- Deadlock
- Dispatching
- Multi-processing
- Tightly coupled (LPAR/MONOPLEX)
- Loosely coupled (SYSPLEX)
- Architecture of machine and operating system
- Mainframe
- Processors
- Main storage, expanded storage
- Devices
- Channels
- Coupling Facility
- Sysplex
- Historical overview
- 360 and 370 - 24-bits
- 370/XA - 31-bits
- 390/ESA - ALETs
- Virtual storage concepts
- Dynamic Address Translation
- Pages, frames, slots
- Segment tables, page tables
- Address-spaces, data-spaces, hiper-spaces
- Batch jobs, TSO-sessions, Started tasks
- Paging
- Page steal
- Least Recently Used
- Reference bit, change bit
- Organisation
- PSA, SYS, PVT, LSQA
- SYS: CSA, LPA, SQA, Nucleus
- ESYS: Extended Nucleus, ESQA, ELPA, ECSA
- EPVT, ELSQA
- V=R versus V=V
- DAT-on versus DAT-off, TLB
- Primary mode versus other modes, ALB
- Storage and addressing:
- Absolute
- Real and expanded
- Virtual
- Primary
- Secondary
- AR-specified
- Home
- Logical
- Effective
- Wrap-around
- Storge protection
- Key-controlled protection
- Fetch protection
- Page protection
- Low-address protection
- Registers:
- Program Status Word
- DAT mode
- PSW key
- Problem state versus Supervisor state
- Address space control
- Condition code
- Program mask
- Addressing mode
- PER mode
- Prefix register
- Interrupts and interrupt classes
- Control registers
- Access registers
- General purpose registers
- Floating point registers
- Floating point status register
- Vector registers
- Vector status register
- Addressing mode, residency mode, cross memory mode
- Amode 24 versus 31, Amode any
- Rmode 24, any
- Cross memory mode
- Addressing modes:
- Primary mode
- Secondary mode
- Access Register mode
- Home space mode
- Using registers in instructions
- With a base register only
- With both a base and an index register
- Using R0
- Simple USING and DROP statements
- Units of work
- Address spaces, tasks, and subtasks
- Task mode versus SRB mode
- Asynchronous exits
- Swap-in, swap-out
- Dispatching
- Overview of modes:
- JOB/TSU/STC
- Task/SRB
- Non-reusable/reusable/reenterable/refreshable
- Rmode 24/ANY
- Amode 24/31/ANY
- ASC mode primary/secondary/home/AR
- SVC/Problem
- Process-must-complete mode
- Most important control blocks
- PSA
- CVT, SCVT, ASVT
- ASCB, ASSB, ASXB
- SRB
- TCB, STCB, JSCB, TIOT, JFCB
- RB (PRB, SVRB, IRB), CDE
- UCB
- Save area chain, Linkage stack
- Literature
- z/Architecture Principles of Operation
- z/OS V1R1.0 MVS Extended Addressability Guide
The topics for this course have been subdivided into seven
chapters:
- Assembler
- Architecture of machine and operating system
- Instruction set
- Most relevant standard macros
- Coding techniques and structured programming
- Assembler directives
- Literature
- Assembler
- Module formats
- Source member
- Label field
- Opcode field
- Operands field
- Comment field
- Continuation
- Listing
- Option summary
- External symbol dictonary
- Assembly
- Title and using overview
- Location and object code
- Source code
- Macro level and name
- Relocation dictionary
- Cross reference
- Unreferenced symbols
- Macro source summary
- Macro cross reference
- DSECT cross reference
- Using map
- Register cross reference
- Summary
- Object member
- Load member
- Types of opcode
- Executable instructions
- Data instructions
- DS versus DC
- LTORG
- CSECTs versus DSECTs
- Assembler directives
- Conditional assembly
- Linkage editor
- Loader
- Architecture of machine and operating system
- Registers
- GPRs and pairs of GPRs
- Addressing and R0
- Calling conventions
- Save areas and save area chaining
- Usage of R13 as save-area pointer
- Usage of R14 for return adress
- Usage of R15 for entry-point / returncode (n*4)
- Usage of R1 as parm-pointer / parmlist pointer / Reason code
/ result value
- Lay-out of JCL-parm
- Lay-out of parmlist, end-of-plist marker
- Usage of R0 as extra parm / result value
- Calling mechanisms
- SVC + LPSW --> FLIH+SLIH
- BAL/BALR + BR --> obsolete
- BAS/BASR + BSM/BR --> Fast
- BASSM + BSM --> Glueing
- PC/BAKR + PR --> Stack
- Instruction set
- Data formats
- Zoned data format, Sign, ASCII/EBCDIC
- Binary data format
- Signed / unsigned
- Halfword / fullword / doubleword
- Address format: 24-bit, 31-bit, Amode bit, ALETs
- String formats
- Alignment
- Unprivileged instructions
- Arithmetic operations
- Add: A, AR, AH, AHI, AL, ALR
- Subtract: S, SR, SH, SL, SLR
- Multiply: M, MR, MH, MHI, MS, MSR
- Divide: D, DR
- Logical operations
- Compare: C, CR, CH, CHI, CL, CLR, CLI, CLC, CLM, CLCL,
CLCLE,
TM, TMH, TML, CLST, CUSE
- And: N, NR, NI, NC
- Or: O, OR, OI, OC
- Exclusive or: X, XR, XI, XC
- Moving data
- Register to register: LR, LTR, LCR, LNR, LPR
- Storage to register: L, LH, LHI, LM, IC, ICM
- Register to storage: ST, STH, STM, STC, STCM
- Storage to storage: MVC, MVI, MVCIN, MVCL, MVCLE
- Other: LA
- Program flow control
- Branching: BC, BCR, BAL, BALR, BAS, BASR, BASSM, BSM, SVC +
BRAS, BRC
- Extended mnemonics: B, BE, BNE, BL, BNL, BH, BNH, BM, BNM,
BZ,
BNZ, BO, BNO, BP, BNP, BR, BER, BNER, BLR, BNLR, BHR, BNHR,
BMR, BNMR, BZR, BNZR, BOR, BNOR, BPR, BNPR
- Most relevant standard macros
- Program control
- Standard linkage: SAVE and RETURN
- Abort program: ABEND
- Invoke sub-program statically: CALL
- Invoke sub-program dynamically: IDENTIFY and LINK/LINKX or
LOAD
and DELETE with BR/BASR/BASSM
- Program transfer: XCTL/XCTLX
- Time
- Determine current time: TIME or CONVTOD, STCKCONV
- Used CPU-time in task-mode: TIMEUSED
- Other services
- Directing code generation: SPLEVEL, SYSSTATE
- Macro Instructions for QSAM move mode
- OPEN, CLOSE
- GET, PUT
- DCB, EODAD
- Record formats
- Fixed / Fixed Blocked
- Variable / Variable Blocked
- Coding techniques and structured programming
- Modularisation, segmention, CSECTs, subroutines, and location
counters
- Comments regarding design
- Comments
- Lay-out
- Awful coding techniques
- Missing or erroneous comments
- Useless comments
- Self-modifying code:
- Changing condition of a branch instruction
- Changing target of a branch instruction, S-con
- Changing opcode
- Misuse of location counter:
- *-offset
- Same for label + or - offset
- 'Magical' numbers
- Too many base registers
- Unlogical EQUates
- Assembler directives
- Assembly control
- *PROCESS
- START
- END
- ICTL
- ISEQ
- COPY
- OPSYN
- EXITCTL
- Object control
- AMODE
- RMODE
- CATTR
- ALIAS
- ENTRY
- EXTRN
- PUNCH
- REPRO
- WXTRN
- Listing control
- TITLE
- SPACE
- EJECT
- CEJECT
- ASPACE
- AEJECT
- PRINT
- PUSH PRINT
- POP PRINT
- Generating data
- DC
- Duplication, alignment
- Type, Attribute
- Modifier
- Value
- DS
- EQU, EQU *, EQU *+..., EQU *-...
- LTORG
- CNOP
- Controlling addressability
- CSECT
- RSECT
- DSECT
- USING
- Ordinary
- Labeled
- Dependent
- Labeled dependent
- DROP
- PUSH USING
- POP USING
- ORG
- Literature
- High Level Assembler Programmer's Guide
- High Level Assembler Language Reference
- z/OS V1R1.0 MVS Assembler Services Guide
- z/OS V1R1.0 MVS Assembler Services Reference (2 delen)
- z/OS V1R1.0 DFSMS Using Data Sets
- z/OS V1R1.0 DFSMS Macro Instructions for Data Sets
- z/OS V1R1.0 DFSMS Program Management
- z/OS V1R1.0 MVS System Codes
- z/OS V1R1.0 MVS System Messages (10 delen)
The topics for this course have been subdivided into eight
chapters:
- Assembler
- Architecture of machine and operating system
- Instruction set
- Most relevant standard macros
- Coding techniques and structured programming
- Reusability
- Assembler directives
- Literature
- Assembler
- Module formats
- Load module attributes: RF, RN, RU, NX, SC
- Assembler function
- Assembly parameters
- Run-time logic
- SYSABEND, SYSUDUMP, SYSMDUMP
- Tracing
- SNAP-dumps
- IPCS
- Other debugging tools: IDF, XDC, ???
- Architecture of machine and operating system
- Calling conventions
- Linkage stack, F1SA-pointer
- Usage of R15 for returncode (n*4)
- Usage of R1 as parmlist pointer
- Lay-out of parmlist, end-of-plist marker in access
register
mode
- Calling mechanisms and the linkage stack:
- SVC/MC + LPSW --> FLIH+SLIH
- PC + PT/LPSW
- BAKR + PR --> Overhead
- Glue modules
- Static call using a Vcon
- Dynamic call using LOAD and DELETE macros
- Instruction set
- Data formats
- Packed decimal format, Sign
- Floating point format
- Short format (32-bit E/D)
- Long long format (64-bit D/W)
- Extended format (128-bit X)
- Unprivileged instructies
- Arithmetic operations
- Conversion: CVB, CVD, PACK, UNPK
- Logical operations
- Shifting: SLA, SLL, SLDA, SLDL, SRA, SRL, SRDA, SRDL
- Moving data
- Register to register: CPYA, EAR, SAR
- Storage to register: LAM
- Register to storage: STAM
- Storage to storage: MVPG (1), MVN, MVZ, MVO, TR, TRT,
MVST
- Other: LAE, SRST
- Program flow control
- Branching: MC
- Loop control: BCT, BCTR, BRCT, BXH, BRXH, BXLE, BRXLE
- Other: EX
- all instructions except EX
- length field in: MVC, CLC, TR, TRT
- mask field in: TM, BC, BCR
- Other general instructions
- Checksum: CKSM
- Sorting: CFC, UPT
- Serialisation: TS, CS, CDS, PLO
- Timing: STCK
- Program mask: IPM, SPM
- Decimal Instructions
- Arithmetic operations
- Add: AP, ZAP
- Subtract: SP
- Multiply: MP, SRP
- Divide: DP, SRP, rounding
- Logical operations
- Moving data
- Storage to storage: ED, EDMK
- Floating-Point Instructions
- Arithmetic operations
- Add: AE, AER, AD, ADR, AXR, AU, AUR, AW, AWR
- Subtract: SE, SER, SD, SDR, SXR, SU, SUR, SW, SWR
- Multiply: ME, MER, MD, MDR, MXD, MXDR, MXR
- Divide: DE, DER, DD, DDR, DXR, HER, HDR
- Square root: SQDR, SQER
- Logical operations
- Compare: CE, CER, CD, CDR
- Moving data
- Register to register: LER, LDR, LTER, LTDR, LCER, LCDR,
LNER,
LNDR, LPER, LPDR, LRER, LRDR
- Storage to register: LE, LD
- Register to storage: STE, STD
- Control instructions
- Program flow control
- Branching: BAKR, PC, PR, PT
- Moving data
- Storage to register: EREG, ESTA
- Register to storage: MSTA
- Controlling the PSW
- Addressing mode: IAC, SAC, SACF
- Other control instructions
- Storage: IVSK
- Testing addresses: TAR
- Most relevant standard macros
- Program control - advanced:
- Program interruption exits: SPIE and ESPIE
- Controlling storage
- Storage: FREEMAIN en GETMAIN
- Storage: STORAGE
- Structures: CPOOL and subpools
- Communication:
- Inserting messages in the system log: WTL
- Other services
- Debugging: SNAP/SNAPX, IEATDUMP
- Data-in-Virtual: DIV
- Macro Instructions for Data Sets
- OPEN, CLOSE
- READ, WRITE, GET, PUT, ERASE
- CHECK
- DCB, DCBD, DCBE
- ACB, RPL
- Record formats
- Fixed / Fixed Blocked
- Variable / Variable Blocked
- Spanned
- Undefined
- Access methods: BSAM, QSAM-locate, QSAM-move, QSAM-data,
BPAM,
BISAM, QISAM, BDAM, EXCP/EXCPVR, VSAM-ESDS, VSAM-KSDS,
VSAM-RRDS,
VSAM-LDS, IMS, DB2
- CHKPOINT
- NOTE, POINT
- XLATE
- Coding techniques and structured programming
- Controlling storage, paging
- In-line and out-of-line error handling
- Loops with BCT/BCTR
- Loops with BXLE/BXH
- Locality of reference and caching
- Exceptions and SPIE/ESPIE
- Abends and STAE/ESTAE
- Reusability
- Non-reusable programs
- Serially reusable programs
- Reenterable programs
- Refreshable programs
- Performance considerations
- Consequences for programming techniques
- Macro-variants: MF=S, MF=L, MF=(E,addr), MF=(G,addr)
- Generating executable code "on the flight"
- Assembler directives
- Output control
- Generating data
- Controlling addressability
- Literature
- z/OS V1R1.0 DFSMSdfp Advanced Services
- z/OS V1R1.0 DFSMSdfp Checkpoint/Restart
- z/OS V1R1.0 DFSMSdfp Storage Administration Reference
- MVS Programming: Batch Local Shared Resources
- Debug Tool User's Guide and Reference
- HLASM V1R4 Toolkit Feature Interactive Debug Facility User's
Guide
- HLASM V1R3 Toolkit Feature Interactive Debug Facility Reference
Summary
- Don Nielsen (DonN@cmscms.com): 'Redesigning Assembler Language
Development'
The topics for this course have been subdivided into seven
chapters:
- Authorisation
- Instruction set
- Most relevant standard macros
- Coding techniques and structured programming
- Parallellisation
- Introduction dump reading
- Literature
- Authorisation
- APF-authorisation
- Link
- Library
- Only at job-step level
- Supervisor state
- PSW key
- Instruction set
- Unprivileged instructions
- Moving data
- Storage to storage: MVPG (1)
- Control instructions
- Program flow control
- Moving data
- Register to register: EPAR, ESAR, SSAR
- Storage to register: LASP, LCTL, LURA
- Register to storage: STCTL, STURA
- Storage to storage: MVCP, MVCS, MVCK, MVCDK, MVCSK, MVPG
(2)
- Other: LRA
- Controlling the PSW
- PSW-key: IPK, SPKA
- System mask: STNSM, STOSM
- Other: LPSW, SSM
- Other control instructions
- Storage: ISKE, IPTE, RRBE, SSKE
- DAT: PALB, PTLB
- Clock: SCK, SCKC, SPT, STCKC, STPT
- Prefix: SPX, STPX
- Testing addresses: TB, TPROT
- Tracing: TRACE
- Other: Diagnose, SIGP, STAP, STIDP
- I/O instructions
- Vector instructions
- Custom instructions
- Most relevant standard macros
- Program control
- Invoking a sub-program dynamically: SYNCH/SYNCHX
- Program control - advanced:
- Subtask management: ATTACH/ATTACHX, DETACH, STATUS, CHAP
- Catching abends: STAE, ESTAE/ESTAEX, SETRP
- Linkage stack management: IEALSQRY, LSEXPAND
- Storage control
- Subpool types
- Cross memory: DSPSERV dataspace with ALESERV and TESTART
- Cross memory: DSPSERV hiperspace with HSPSERV
- Paging: PGSER or PGLOAD, PGOUT, and PGRLSE
- Serialisation
- Resources: ENQ, DEQ, GQSCAN
- Synchronisation: WAIT/POST and EVENTS
- Named tokens: IEANTCR, IEANTRT, IEANTDL
- Communication:
- Console info: CONVCON
- Message to console: WTO, WTOR, DOM
- Time
- Timer interrupts: STIMER, STIMERM, CPUTIMER, TTIMER
- Other services
- Resource Management: RESMGR
- Load module info: CSVAPF, CSVINFO, CSVQUERY, CSVRTLS
- Unique identification of a task: TCBTOKEN
- Parmlib members: IEFPRMLB
- Macro Instructions for Data Sets
- DYNALLOC
- Datasets
- Output descriptors
- Coding techniques and structured programming
- Abends, STAI, STAE, ESTAE/ESTAEX, FESTAE, FRR, Percolation
- Resource management
- Parallellisation
- Lock-out, dead-lock
- Proving correctness
- Serialisation
- ENQ/DEQ
- Latches
- CS/CDS/PLO
- Local lock, CML lock, CPU lock
- Hierarchy
- Synchronisation
- Introduction dump reading
- Symptom dump
- PSW and ILC
- Load module identification
- PSW data
- GPRs and ARs
- Locating error instruction
- Determine loadmod offset
- Find correct CSECT and offset
- Locate error instruction
- SYSUDUMP / SYSABEND
- TCB c.a.
- Virtual storage map
- ENQ/DEQ CBs
- Data Management CBs
- IOS CBs
- RTM CBs
- Stacks and Save Areas
- Subsystem Area
- LSQA
- Subpools 229 and 230
- Registers
- Summary storage
- Modules
- User Subpools
- Trace Table
- Literature
- OS/390 V2R6.0 MVS Programming: Resource Recovery
- z/OS V1R1.0 MVS Authorized Assembler Services Guide
- z/OS V1R1.0 MVS Authorized Assembler Services Reference
(4 volumes)
- z/OS V1R1.0 DFSMS Access Method Services for Catalogs
- z/OS V1R1.0 JES2 Macros
- z/OS V1R1.0 RACF Macros and Interfaces
- z/OS V1R1.0 RACROUTE Macro Reference
- z/OS V1R1.0 MVS Using the Functional Subsystem Interface
- z/OS V1R1.0 MVS Using the Subsystem Interface
- z/OS V1R1.0 MVS IPCS User's Guide
- z/OS V1R1.0 MVS IPCS Commands
- z/OS V1R1.0 MVS Dump Output Messages
- z/OS V1R1.0 JES2 Messages
- z/OS V1R1.0 RACF Messages and Codes
- z/OS V1R1.0 MVS Data Areas (5 volumes)
- z/OS V1R1.0 JES2 Data Areas (3 volumes)
- z/OS V1R1.0 RACF Data Areas
The topics for this course have been subdivided into six chapters:
- Assembler
- Assembler directives
- Using macros and conditional assembly
- Designing macros
- OO-techniques in assembler
- Literature
- Assembler
- Assembler function
- Pre-assembly logic
- MNOTE, MHELP
- MCALL/NOMCALL
- Assembly logic
- Assembler directives
- Macro definitions
- MACRO
- Prototype statement
- Positional parameters
- Keyword parameters
- MEND
- Comments
- MNOTE, severity levels
- AREAD
- AINSERT
- Pre-assembly variables
- LCLA, GBLA
- LCLB, GBLB
- LCLC, GBLC
- SETA
- Built-in functions: AND, OR, XOR, NOT, SLA, SLL, SRA, SRL
- SETAF
- SETB
- Built-in functions: NOT, AND, AND NOT, OR, OR, NOT
- Logical terms: EQ, NE, GT, GE, LT, LE
- SETC
- Built-in functions: DOUBLE, FIND, INDEX, LOWER, UPPER
- SETCF
- Substring notation
- Extended SET
- Arrays
- Created set symbols
- Pre-assembly control
- Labels, ANOP
- AIF
- AGO
- ACTR
- MHELP
- System variables
- &SYSDATE, &SYSDATC, &SYSTIME
- &SYSECT, &SYSSTYP
- &SYSLIST
- &SYSNDX, &SYSNEST
- &SYSPARM
- Using macros and conditional assembly
- Using macros versus COPY
- DSECT-macros
- CSECT-macros
- Conditional assembly in open code
- Optimisation
- Replacing standard macros
- replacing opcodes by macros
- Designing macros
- What lends itself for macrofication
- Documentation of macros
- Pre-assembly logic
- Assembly logic
- Run-time logic
- Interface considerations
- Assembly interface
- Run-time interface
- Directing expansion using parameters
- Location of macro: in the source or in a library?
- Replacing opcodes
- replacing standard macros
- OO-techniques in assembler
- Encapsulation
- Designing a class
- Designing methods
- Implementation in macros
- Literature
- High Level Assembler Programmer's Guide
- High Level Assembler Language Reference
- John Ehrman (ehrman@vnet.ibm.com): 'Macros and Conditional
Assembly
Techniques, SHARE 94, Winter Conference 2000'
The topics for this course have been subdivided into four chapters:
- Extended mnemonics
- Assembler Directives
- Macros for structured programming
- Mapping macros
- Extended mnemonics
- Conditional subroutine invocation
- BALC, BALE, BALH, BALL, BALM, BALO, BALP, BALZ
BALNE, BALNH, BALNL, BALNM, BALNO, BALNP, BALNZ
- BASC, BASE, BASH, BASL, BASM, BASO, BASP, BASZ
BASNE, BASNH, BASNL, BASNM, BASNO, BASNP, BASNZ
- Manipulating data
- CLEAR
- CPY
- DEC, INC
- LC, LT, LTA24, LTC, LTH, LTHU, STA24
- MVPL
- SET, SETOF, SETON
- Execute instructions
- EXQ, EXCLC, EXMVC, EXTR, EXTRT, EXXC
- Extended type checking
- Other
- Assembler Directives
- Checking variables
- CHKLIT, CHKMAP, CHKNUM, CHKREG
- DISSECT, SPLIT
- Defining data
- CMDTXT, TRTAB
- DCL, DC, DCOVR, DS, DSOVR, NESTCB
- EQU, EQUOVR, EQUREG
- EXTRN, EXTRNOVR
- LABEL
- LTORG, RDATA, RLTORG
- Addressing
- DROP
- POP, PUSH
- USE, USEDREGS, USING
- Other
- EJECT, EJECTOVR, SPACE
- END
- GENMAPS
- OPSYSNS
- SYSPARM
- Macros for structured programming
- Programs and subroutines
- PGM, RETRN
- ABND, ABNDPGM
- BEGSR, ENDSR, EXSR
- Conditional expressions
- IF, ELSE, ENDIF
- CASE, ELSE, ENDCASE
- DO, LOOP, LEAVE, ENDDO
- GOTO
- IF$, IF$ALC, IF$Ls, IF$LU
- Various
- DBG, SNAPHDR, SNAPNTRY
- GLUE
- NTCR, NTRT, NTDL
- RWTO
- SETMODE
- Mapping macros
- Assigned field types - a, b, c, f, g, j, p, v, 0
- Using MAP-macros in combination with GENMAPS
- Using MAP-macros in combination with DCL
- Using declared bits
- Using declared values
- Using defined registers
- Using conditional expressions
- Relation with DC, DS, EXTRN macros
- Function of DCOVR, DSOVR, EXTRNOVR macros
- MAPEQU, MAPBITS, MAPREGS
- MAPSAVE
- MAP control blocks
Remarks? Questions? More information? Select the topic of your
choice or
e-mail us with your
questions.
To course Introduction and general principles
To course Assembler starter
To course Assembler for application programmers
To course Assembler for experienced programmers
To course Assembler - Macro Facility
To course Bixoft eXtended Assembler language
This site is a member of WebRing.
You are invited to browse the
list of mainframe-loving sites.
|
|
Dinos are not dead. They are alive and well and living in data
centers all
around you. They speak in tongues and work strange magics with
computers.
Beware the dino! And just in case you're waiting for the final
demise of
these dino's: remember that dinos ruled the world for 155-million
years!
|
Dinos and other anachronisms
[
Join Now
|
Ring Hub
| Random
|
<< Prev
|
Next >>
]
|