Services and Modeling for Embedded Software Development
Embecosm divider strip
Prev  Next

Chapter 3. Instructions

3.1. Notation
3.1.1. Assembler Notation
3.2. Instruction Format
3.3. Summary of Instructions
3.3.1. 16-bit Instructions of AAP
3.3.2. 32-bit Instructions of AAP
3.4. Detailed Descriptions of 16-bit ALU Instructions
3.4.1. NOP: No Operation
3.4.2. ADD: Unsigned Add
3.4.3. SUB: Unsigned Subtract
3.4.4. AND: Bitwise AND
3.4.5. OR: Bitwise OR
3.4.6. XOR: Bitwise Exclusive OR
3.4.7. ASR: Arithmetic Shift Right
3.4.8. LSL: Logical Shift Left
3.4.9. LSR: Logical Shift Right
3.4.10. MOV: Move Register to Register
3.4.11. ADDI: Unsigned Add Immediate
3.4.12. SUBI: Unsigned Subtract Immediate
3.4.13. ASRI: Arithmetic Shift Right Immediate
3.4.14. LSLI: Logical Shift Left Immediate
3.4.15. LSRI: Logical Shift Right Immediate
3.4.16. MOVI: Move Immediate to Register
3.5. Detailed Descriptions of 16-bit Load/Store Instructions
3.5.1. LDB: Indexed Load Byte
3.5.2. LDW: Indexed Load Word
3.5.3. LDB: Indexed Load Byte with Postincrement
3.5.4. LDW: Indexed Load Word with Postincrement
3.5.5. LDB: Indexed Load Byte with Predecrement
3.5.6. LDW: Indexed Load Word with Predecrement
3.5.7. STB: Indexed Store Byte
3.5.8. STW: Indexed Store Word
3.5.9. STB: Indexed Store Byte with Postincrement
3.5.10. STW: Indexed Store Word with Postincrement
3.5.11. STB: Indexed Store Byte with Predecrement
3.5.12. STW: Indexed Store Word with Predecrement
3.6. Detailed Descriptions of 16-bit Branch/Jump Instructions
3.6.1. BRA: Relative Branch
3.6.2. BAL: Relative Branch and Link
3.6.3. BEQ: Relative Branch if Equal
3.6.4. BNE: Relative Branch if Not Equal
3.6.5. BLTS: Relative Branch if Signed Less Than
3.6.6. BGTS: Relative Branch if Signed Greater Than
3.6.7. BLTU: Relative Branch if Unsigned Less Than
3.6.8. BGTU: Relative Branch if Unsigned Greater Than
3.6.9. JMP: Absolute Jump
3.6.10. JAL: Absolute Jump and Link
3.6.11. JEQ: Absolute Jump if Equal
3.6.12. JNE: Absolute Jump if Not Equal
3.6.13. JLTS: Absolute Jump if Signed Less Than
3.6.14. JGTS: Absolute Jump if Signed Greater Than
3.6.15. JLTU: Absolute Jump if Unsigned Less Than
3.6.16. JGTU: Absolute Jump if Unsigned Greater Than
3.7. Detailed Descriptions of 16-bit Miscellaneous Instructions
3.7.1. RTE: Return from Exception
3.8. Detailed Descriptions of 32-bit ALU Instructions
3.8.1. NOP: No Operation
3.8.2. ADD: Unsigned Add
3.8.3. SUB: Unsigned Subtract
3.8.4. AND: Bitwise AND
3.8.5. OR: Bitwise OR
3.8.6. XOR: Bitwise Exclusive OR
3.8.7. ASR: Arithmetic Shift Right
3.8.8. LSL: Logical Shift Left
3.8.9. LSR: Logical Shift Right
3.8.10. MOV: Move Register to Register
3.8.11. ADDI: Unsigned Add Immediate
3.8.12. SUBI: Unsigned Subtract Immediate
3.8.13. ASRI: Arithmetic Shift Right Immediate
3.8.14. LSLI: Logical Shift Left Immediate
3.8.15. LSRI: Logical Shift Right Immediate
3.8.16. MOVI: Move Immediate to Register
3.8.17. ADDC: Unsigned Add with Carry
3.8.18. SUBC: Unsigned Subtract with Carry
3.8.19. ANDI: Bitwise AND Immediate
3.8.20. ORI: Bitwise OR immediate
3.8.21. XORI: Bitwise Exclusive OR Immediate
3.9. Detailed Descriptions of 32-bit Load/Store Instructions
3.9.1. LDB: Indexed Load Byte
3.9.2. LDW: Indexed Load Word
3.9.3. LDB: Indexed Load Byte with Postincrement
3.9.4. LDW: Indexed Load Word with Postincrement
3.9.5. LDB: Indexed Load Byte with Predecrement
3.9.6. LDW: Indexed Load Word with Predecrement
3.9.7. STB: Indexed Store Byte
3.9.8. STW: Indexed Store Word
3.9.9. STB: Indexed Store Byte with Postincrement
3.9.10. STW: Indexed Store Word with Postincrement
3.9.11. STB: Indexed Store Byte with Predecrement
3.9.12. STW: Indexed Store Word with Predecrement
3.10. Detailed Descriptions of 32-bit Branch/Jump Instructions
3.10.1. BRA: Relative Branch
3.10.2. BAL: Relative Branch and Link
3.10.3. BEQ: Relative Branch if Equal
3.10.4. BNE: Relative Branch if Not Equal
3.10.5. BLTS: Relative Branch if Signed Less Than
3.10.6. BGTS: Relative Branch if Signed Greater Than
3.10.7. BLTU: Relative Branch if Unsigned Less Than
3.10.8. BGTU: Relative Branch if Unsigned Greater Than
3.10.9. JMP: Absolute Jump
3.10.10. JAL: Absolute Jump and Link
3.10.11. JEQ: Absolute Jump if Equal
3.10.12. JNE: Absolute Jump if Not Equal
3.10.13. JLTS: Absolute Jump if Signed Less Than
3.10.14. JGTS: Absolute Jump if Signed Greater Than
3.10.15. JLTU: Absolute Jump if Unsigned Less Than
3.10.16. JGTU: Absolute Jump if Unsigned Greater Than
3.10.17. JMPL: Absolute Jump Long
3.10.18. JALL: Absolute Jump Long and Link
3.10.19. JEQL: Absolute Jump Long if Equal
3.10.20. JNEL: Absolute Jump Long if Not Equal
3.10.21. JLTSL: Absolute Jump Long if Signed Less Than
3.10.22. JGTSL: Absolute Jump Long if Signed Greater Than
3.10.23. JLTUL: Absolute Jump Long if Unsigned Less Than
3.10.24. JGTUL: Absolute Jump Long if Unsigned Greater Than
3.11. Detailed Descriptions of 32-bit Miscellaneous Instructions
Embecosm divider strip