This preview shows page 1. Sign up to view the full content.
Unformatted text preview: be avoided if possible. 4. In general Rd, Rn and Rm should be distinct registers, though loading into the base register (Rd = Rn) is acceptable provided auto-indexing is not used in the same instruction. 5. When a word is loaded from a non-word-aligned address the loaded data is the word-aligned word containing the addressed byte, rotated so that the addressed byte is in the least significant byte of the destination register. Some ARM systems 128 The ARM Instruction Set may raise an exception under these circumstances (controlled by the A flag in bit 1 of CP15 register 1, described in Section 11.2 on page 293). 6. When a word is stored to a non-word-aligned address the bottom two bits of the address are ignored and the word is stored as though they had been zero. Some ARM systems may raise an exception under these circumstances (again controlled by the A flag in CP15 register 1). 5.11 Half-word and signed byte data transfer instructions
These instructions are not supported by some early ARM processors. As a result of their late addition to the architecture they are somewhat 'shoe-horned' into the instruction space as indicated by the split immediate field. The addressing modes available with these instructions are a subset of those available with the unsigned byte and word forms. Binary encoding
31 Figure 5.10 Half-word and signed byte data transfer instruction binary encoding. Half-word and signed byte data transfer instructions 129 Description These instructions are very similar to the word and unsigned byte forms described in the previous section, but here the immediate offset is limited to eight bits and the scaled register offset is no longer available.
Table 5.6 Data type encoding. The S and H bits define the type of the operand to be transferred as listed in Table 5.6. Note that the fourth combination of these bits, corresponding to an unsigned byte type, is not available in this format. The format described in the previous section should be used instead. Since there is no difference between storing signed and unsigned data, the only releva...
View Full Document
This document was uploaded on 10/30/2011 for the course CSE 378 380 at SUNY Buffalo.
- Spring '09