* Question
What is the difference between the Thumb instruction set and the ARM instruction set? |
* Answer
The Thumb instruction set has no coprocessor instructions, semaphore instructions, and instructions to access the CPSR or SPSR, no multiply-add instructions and 64-bit multiply instructions, and the second operand of the instruction is restricted; except for the branch instruction B, which has conditional execution functions.,The relative transfer of the program, especially the conditional jump has more restrictions on the scope than the jump under the ARM code, and the steering subroutine is an unconditional transfer.2 data processing instructions.In addition to the MOV and ADD instructions accessing registers R8-Rl5, other data processing instructions always update the ALU status flags in the CPSR.The Thumb data processing instruction accessing the registers R8 to Rl5 cannot update the ALU status flag in the CPSR.3 single register load and store instructions.In addition to R0 to R7, the PUSH instruction can also store the link register Rl4, and the POP instruction can load the program instruction PC. |
COMMENTS