ARM VERSION 1.2 User Manual
Developer suite, Assembler guide
Advertising
Table of contents
Document Outline
- Contents
- Preface
- Introduction
- Writing ARM and Thumb Assembly Language
- 2.1 Introduction
- 2.2 Overview of the ARM architecture
- 2.3 Structure of assembly language modules
- 2.4 Using the C preprocessor
- 2.5 Conditional execution
- 2.6 Loading constants into registers
- 2.7 Loading addresses into registers
- 2.8 Load and store multiple register instructions
- 2.9 Using macros
- 2.10 Describing data structures with MAP and FIELD directives
- 2.10.1 Relative maps
- 2.10.2 Register-based maps
- 2.10.3 Program-relative maps
- 2.10.4 Finding the end of the allocated data
- 2.10.5 Forcing correct alignment
- 2.10.6 Using register-based MAP and FIELD directives
- 2.10.7 Using two register-based structures
- 2.10.8 Avoiding problems with MAP and FIELD directives
- 2.11 Using frame directives
- Assembler Reference
- 3.1 Command syntax
- 3.2 Format of source lines
- 3.3 Predefined register and coprocessor names
- 3.4 Built-in variables
- 3.5 Symbols
- 3.6 Expressions, literals, and operators
- 3.6.1 String expressions
- 3.6.2 String literals
- 3.6.3 Numeric expressions
- 3.6.4 Numeric literals
- 3.6.5 Floating-point literals
- 3.6.6 Register-relative and program-relative expressions
- 3.6.7 Logical expressions
- 3.6.8 Logical literals
- 3.6.9 Operator precedence
- 3.6.10 Unary operators
- 3.6.11 Binary operators
- ARM Instruction Reference
- 4.1 Conditional execution
- 4.2 ARM memory access instructions
- 4.3 ARM general data processing instructions
- 4.4 ARM multiply instructions
- 4.5 ARM saturating arithmetic instructions
- 4.6 ARM branch instructions
- 4.7 ARM coprocessor instructions
- 4.8 Miscellaneous ARM instructions
- 4.9 ARM pseudo-instructions
- Thumb Instruction Reference
- Vector Floating-point Programming
- 6.1 The vector floating-point coprocessor
- 6.2 Floating-point registers
- 6.3 Vector and scalar operations
- 6.4 VFP and condition codes
- 6.5 VFP system registers
- 6.6 Flush-to-zero mode
- 6.7 VFP instructions
- 6.7.1 FABS, FCPY, and FNEG
- 6.7.2 FADD and FSUB
- 6.7.3 FCMP
- 6.7.4 FCVTDS
- 6.7.5 FCVTSD
- 6.7.6 FDIV
- 6.7.7 FLD and FST
- 6.7.8 FLDM and FSTM
- 6.7.9 FMAC, FNMAC, FMSC, and FNMSC
- 6.7.10 FMDRR and FMRRD
- 6.7.11 FMDHR, FMDLR, FMRDH, and FMRDL
- 6.7.12 FMRS and FMSR
- 6.7.13 FMRRS and FMSRR
- 6.7.14 FMRX, FMXR, and FMSTAT
- 6.7.15 FMUL and FNMUL
- 6.7.16 FSITO and FUITO
- 6.7.17 FSQRT
- 6.7.18 FTOSI and FTOUI
- 6.8 VFP pseudo-instruction
- 6.9 VFP directives and vector notation
- Directives Reference
- Glossary
- Index