If you are very new to ARM microcomputers, there’s no better introductory book
than “The Insider’s Guide to the Philips ARM7-Based Microcontrollers” by
Trevor Martin. Martin is an executive of Hitex, a UK vendor of embedded
microcomputer development software and hardware and he obviously understands
You must register first, then you can download this e-book for free from the Hitex web site.
This is another excellent introduction to ARM Cross Development With Eclipse Components, the free open source system, available as a free download with no need to register:-
Other resources are available at Alex the Geek
Snippet from the Hitex book:-
1.6 The ARM 7 Instruction Set
Now that we have an idea of the ARM7 architecture, programmers model and operating modes we need to take
a look at its instruction set or rather sets. Since all our programming examples are written in C there is no need
to be an expert ARM7 assembly programmer. However an understanding of the underlying machine code is
very important in developing efficient programs. Before we start our overview of the ARM7 instructions it is
important to set out a few technicalities. The ARM7 CPU has two instruction sets: the ARM instruction set which
has 32-bit wide instructions and the THUMB instruction set which has 16-bit wide instructions. In the following
section the use of the word ARM means the 32-bit instruction set and ARM7 refers to the CPU.
The ARM7 is designed to operate as a big-endian or little-endian processor. That is, the MSB is located at the
high order bit or the low order bit. You may be pleased to hear that the LPC2000 family fixes the endianess of
the processor as little endian (i.e. MSB at highest bit address), which does make it a lot easier to work with.
However the ARM7 compiler you are working with will be able to compile code as little endian or big endian.
You must be sure you have it set correctly or the compiled code will be back to front.