The ARM7TDMI Programmer's Model
William Hohl · 2009
All microprocessors have a set of features that programmers will be able to use. In most instances, a programmer will not need an understanding of how the processor is actually constructed, meaning that the wires, transistors, and/or logic boards that were used to build the machine are not typically known. From a programmer’s perspective, what is necessary is a model of the device, something that describes not only the way the processor is controlled but also the features available to you from a high level, such as where data can be stored, what happens when you give the machine an invalid instruction, and so forth. This description is called the programmer’s model. We’ll begin by examining the basic parts of the ARM7TDMI programmer’s model, but come back to certain elements of it again in Chapters 8 and 11, where we cover branching and exceptions in more detail. For now, a brief treatment of the topic will let us begin writing programs.