Learning about assembly language
Although the instruction set reference materials described in the Overview are comprehensive, they do not provide the best starting point for beginners.
The following resources introduce the basic concepts of programming in Arm assembly language:
- The Cortex-A Series Programmer's Guide explains architectural fundamentals and an introduction to assembly language code, along with other useful information for programmers.
- Arm Assembly Language: Fundamentals and Techniques by William Hohl is a popular resource with the Arm University Program. This book discusses the basics of assembly language.
- Embedded Systems Fundamentals with Arm Cortex-M based Microcontrollers: A Practical Approach by Dr Alexander G. Dean includes a chapter correlating C programming features with those in assembly code.
The Arm Compiler 5 toolchain (executable name
armasm) uses a different syntax for assembly code to Arm Compiler 6 (executable name
armclang) and GNU (executable name
as). Although the instructions are mostly the same regardless of toolchain, the syntax around the instructions varies.
- Overview of differences between armasm and GNU syntax assembly code describes the syntax differences you must be aware of if you are using legacy tools or migrating assembly code.