Category:Opcodes

From ARMwiki
(Difference between revisions)
Jump to: navigation, search
m
(Added link to unaligned data access page.)
 
(2 intermediate revisions by one user not shown)
Line 1: Line 1:
 +
<!-- Pay attention to the commented-out parts. -->
 
==Programmer's model==
 
==Programmer's model==
 
*[[Registers]]
 
*[[Registers]]
Line 8: Line 9:
 
*[[Vectors|Vectors/Exceptions]]
 
*[[Vectors|Vectors/Exceptions]]
 
*[[Interrupts]]
 
*[[Interrupts]]
 +
*[[Unaligned data access]]
  
 
==ARM instructions==
 
==ARM instructions==
Line 39: Line 41:
 
[[MRS]]
 
[[MRS]]
 
[[MSR]]
 
[[MSR]]
 +
<!-- ### The following instruction categories are to be 'enabled' as the details are written. ###
 +
        Move this comment marker as appropriate.
 
====StrongARM and later====
 
====StrongARM and later====
 
[[LDRH]]
 
[[LDRH]]
Line 61: Line 65:
 
[[SMUL]]
 
[[SMUL]]
 
[[SMULW]]
 
[[SMULW]]
 +
### end of instruction list commented section ### -->
  
 
==Pseduo instructions==
 
==Pseduo instructions==
 
====Shifts====
 
====Shifts====
[[ASL]]
+
[[Shifts#Logical_or_Arithmetic_Shift_Left|ASL]]
[[ASR]]
+
[[Shifts#Arithmetic_Shift_Right|ASR]]
[[LSL]]
+
[[Shifts#Logical_or_Arithmetic_Shift_Left|LSL]]
[[LSR]]
+
[[Shifts#Logical_Shift_Right|LSR]]
[[ROR]]
+
[[Shifts#Rotate_Right|ROR]]
[[RRX]]
+
[[Shifts#Rotate_Right_with_Extend|RRX]]
 +
<!-- ### objasm will be uncommented when entries written ###
 
====Assembler (''objasm'')====
 
====Assembler (''objasm'')====
 
[[Objasm symbols|Symbols: %, ^, #, ! (ASSERT), ;, \]]<br>
 
[[Objasm symbols|Symbols: %, ^, #, ! (ASSERT), ;, \]]<br>
Line 81: Line 87:
 
[[Objasm macros|Macros: MACRO/MEND/MEXIT/MACRONAME]]
 
[[Objasm macros|Macros: MACRO/MEND/MEXIT/MACRONAME]]
 
[[Labels Objasm|Labels]]
 
[[Labels Objasm|Labels]]
 +
### end of objasm commented section ### -->
 
====BBC BASIC assembler====
 
====BBC BASIC assembler====
[[ADR|ADR/ADRL]]
+
[[BBC_BASIC_assembler#ADR_Rx.2C_label|ADR]]
[[ALIGN]]
+
[[BBC_BASIC_assembler#ALIGN|ALIGN]]
[[EQUx|EQUB/EQUW/EQUD/EQUS/EQUF]]
+
[[BBC_BASIC_assembler#EQU.5BB.7CW.7CD.7CS.5D_.2F_DC.5BB.7CW.7CD.7CS.5D_.3Cdata.3E|DCB/DCW/DCD/DCS]]
[[OPT]]<br>
+
[[BBC_BASIC_assembler#EQU.5BB.7CW.7CD.7CS.5D_.2F_DC.5BB.7CW.7CD.7CS.5D_.3Cdata.3E|EQUB/EQUW/EQUD/EQUS]]
[[Labels BBC BASIC|Labels]]
+
[[BBC_BASIC_assembler#OPT|OPT]]<br>
 +
[[BBC_BASIC_assembler#Assembly_format|Labels]]
 +
<!-- ### Linux ARM GCC will be uncommented when entries written ###
 
====Linux ARM GCC assembler====
 
====Linux ARM GCC assembler====
 
[[GNUARM commands|GNUARM: %, @, #, ;, .ascii, .asciz, .balign, .byte, .code, .end, .endr, .err, .global, .if/.else/.endif, .ifdef/.ifndef, .include, .macro/.endm/.exitm, .rept, .section, .set, .space, .word]]
 
[[GNUARM commands|GNUARM: %, @, #, ;, .ascii, .asciz, .balign, .byte, .code, .end, .endr, .err, .global, .if/.else/.endif, .ifdef/.ifndef, .include, .macro/.endm/.exitm, .rept, .section, .set, .space, .word]]
 +
### end of Linux/GCC commented section ### -->
 +
 +
<!-- ### co-processor instructions to come... ###
 
==Co-processor transfer instructions==
 
==Co-processor transfer instructions==
 
[[CDP]]
 
[[CDP]]
Line 102: Line 114:
 
[[STC]]
 
[[STC]]
 
[[STC2]]
 
[[STC2]]
 +
### end of co-pro commented ### -->
  
 +
<!-- ### FPE instructions to come ###
 
==Floating point (FPA/FPE) instructions==
 
==Floating point (FPA/FPE) instructions==
 
[[ABS]]
 
[[ABS]]
Line 145: Line 159:
 
[[WFC]]
 
[[WFC]]
 
[[WFS]]
 
[[WFS]]
 +
### end of FPE commented ### -->
  
 +
<!-- ### VFP instructions to come ###
 
==Vector Floating Point (VFP) instructions==
 
==Vector Floating Point (VFP) instructions==
 
[[FABS]]
 
[[FABS]]
Line 182: Line 198:
 
[[FTOUI]]
 
[[FTOUI]]
 
[[FTITO]]
 
[[FTITO]]
 +
### end of VFP instructions ### -->
  
 +
<!-- ### Thumb instructions to come ###
 
==Thumb instructions==
 
==Thumb instructions==
 
[[ADC (Thumb)|ADC]]
 
[[ADC (Thumb)|ADC]]
Line 214: Line 232:
 
[[SWI (Thumb)|SWI]]
 
[[SWI (Thumb)|SWI]]
 
[[TST (Thumb)|TST]]
 
[[TST (Thumb)|TST]]
 +
### end of Thumb section ### -->

Latest revision as of 15:32, 21 May 2012

Contents

[edit] Programmer's model

[edit] ARM instructions

[edit] Base instruction set

ADC ADD AND B/BL BIC CMN CMP EOR LDM LDR/LDRB MLA MOV MUL MVN ORR RSB RSC SBC STM STR/STRB SUB SWI SWP TEQ TST

[edit] ARM6 and later

MRS MSR

[edit] Pseduo instructions

[edit] Shifts

ASL ASR LSL LSR ROR RRX

[edit] BBC BASIC assembler

ADR ALIGN DCB/DCW/DCD/DCS EQUB/EQUW/EQUD/EQUS OPT
Labels



Pages in category "Opcodes"

The following 25 pages are in this category, out of 25 total.

A

B

C

E

L

L cont.

M

O

R

S

S cont.

T

Personal tools
Namespaces

Variants
Actions
Navigation
Contents
Toolbox