Of the 13 billion microprocessor-based chips shipped last year, nearly 3 billion were ARM-based. Since 1994, ARM has introduced five new generations of processors; however, instruction on compiling for 32 bit machines lags behind. Written for those with some background in digital logic and high-level programming, this work serves as a text for new programmers, as well as a reference for students and professionals. It focuses on what is needed to compile for ARM, details real assembly uses, and explores situations that programmers will ultimately encounter. A fully functional evaluation version of the RealView Microcontroller Development Kit from Keil accompanies the text