Instruction set ARM-

1. Thumb | Arm command difference

    When writing Thumb instructions, first using CODE16 directive statements, and to be used in the ARM instruction BX instruction to Thumb instructions to the switching state of the processor. When writing ARM instruction, use the CODE32 directive statement.   

    ARM instructions are 32-bit, 16-bit Thumb instructions while, if the storage space 1K, can put ARM instructions 32, 64 can be put Thumb instruction, and therefore when storing instruction Thunb, high code density.

Thumb instruction set is not a coprocessor instruction, and the instruction to access the semaphore command CPSR or SPSR, no multiply-add instructions and 64-bit multiply instructions, etc., and the second operand instruction is limited; B conditional jump instruction in addition to perform functions In addition, other instructions are unconditionally executed; 
most Thumb data processing instructions using the second address format. Thumb instruction set difference ARM instruction set and generally are as follows: Ø jump instruction program relative shift, especially compared with the conditional jump jump in ARM code, there are more limited in range, the steering subroutine the transfer is unconditional. Ø data processing instruction data processing instruction is a general register is operated, in most cases, be the result of the operation into one of the operands in registers, rather than in a third register. Data processing operation less than the ARM state, access registers R8-R15 limited. (Except MOV and ADD instructions access registers R8-R15, the other data processing instructions always update ALU status flags in the CPSR) accessing registers R8-R15 of Thumb data processing instructions can update the ALU status flag in the CPSR Ø single register load and store instructions in the Thumb state, a single register load and store instructions can only access registers R7-R0 Ø bulk register load and store instructions LDM and STM instructions may be in any range with R0 - R7 of the subset of registers to load or store

 

2. ARM registers and Application https://blog.csdn.net/lb920519/article/details/80065102

3. SIMD (Single Instruction Multiple Data single instruction multiple data) instruction set, called NEON advanced SIMD instruction set (voice and video instructions)

Guess you like

Origin www.cnblogs.com/feliz/p/11285819.html