DoaneX CMP-253x - Assembler Language Listing of Additional Resources
Purpose of Listing
The course you are completing, CMP 253x, provides the essential foundations for assembler and for IBM mainframe assembler. In order to be an effective IBM mainframe assembler developer, ongoing professional development using additional resources will be required. This listing provides a sampling of such additional resources. Each student should supplement this listing with useful resources they locate and find useful.
Disclaimer
Because of the unpredictability of online resources, some listed resources may become unavailable.
Step 1: Additional resources to use during DoaneX CMP-253x
- Binary and Hexadecimal Numbers: A document contributed by CSG that provides a discussion of binary and hexadecimal numbers and how to convert between them.
- IBM mainframe instruction formats: A document contributed by CSG that provides a discussion of IBM mainframe address modes.
- EBCDIC table: A link to one of many EBCDIC tables available on the internet. This one not only provides the EBCDIC standard, but also the alternative ASCII standard.
- Storage, Registers and Base-Displacement Addressing: A document contributed by CSG that provides a discussion of storage, registers, and base-displacement addressing.
- IBM Mainframe Assembler Mini-Reference: A document that provides a quick reference on the IBM mainframe instructions and instruction formats.
Step 2: Your first step after DoaneX CMP-253x
DoaneX CMP-253x provides a solid foundation in becoming an assembler language programmer. However, it is only the beginning. To build on the foundation provided by the course, read the following books (and complementary website) and study the practice problems and solutions (and try some!).
- The Big Blue Assembler Book: This book is an introduction to IBM High Level Assembly language (HLASM) programming. It's based on the author's forty years of experience teaching IBM Assembly language to thousands of university students and professional programmers at Fortune 500 companies. In twelve chapters, the book covers the fundamental topics needed by a beginning assembler programmer to start working professionally. The author believes that the best way to become proficient with this language is to write interesting programs that exercise your knowledge of fundamental HLASM concepts. The book contains eighteen programming assignments that will build your proficiency and your confidence as an assembler programmer.
- The Punctilious Programmer: From the author of The Big Blue Assembler Book, this is a comprehensive website covering the IBM Assembler Language with a video course and links to other assembler resources. Material on the site nicely complements material covered in this course.
- Assembler Language Programming for IBM System zTM Servers: The authors survey many aspects of Assembler Language programming on System z processors.
Step 3: Practical experience after Steps 1 and 2
After you finish both the course and book in the next step, you are ready to apply what you have learned. To do so, it is important that you complete a practicum and/or an internship and/or apprenticeship under the guidance of a mentor who is an experienced assembler programmer. During that time, the following resources will be of great use.
- IBM z/Architecture Principles of Operation: This publication provides, for reference purposes, a detailed z/ArchitectureTM description. The publication describes each function at the level of detail needed to prepare an assembler-language program that relies on that function. It does not, however, describe the notation and conventions that must be employed in preparing such a program, for which the user must instead refer to the appropriate assembler-language publication.
- IBM z/Architecture Reference Summary: This publication is intended primarily for use by z/ArchitectureTM assembler-language application programmers. It contains basic machine information summarized from the IBM z/Architecture Principles of Operation (SA22-7832), about the IBM z SystemsTM processors.