This paper provides an overview of the ARM programmer’s model from a low level, including both the 32-bit and 16-bit instruction sets. The 16-bit set, called THUMB, is intended to both conserve memory and increase processing when memories smaller than 32-bits wide are used. The power of the ARM architecture exists in the ability for an application to include both instruction sets and to switch rapidly between them.