Non-Confidential | PDF version | ARM DUI0379G | ||

| ||||

Home > Symbols, Literals, Expressions, and Operators > Numeric expressions |

Numeric expressions consist of combinations of numeric constants, numeric variables, ordinary numeric literals, binary operators, and parentheses.

Numeric expressions can contain register-relative or program-relative
expressions if the overall expression evaluates to a value that does not include a register
or the PC.

Numeric expressions evaluate to 32-bit
integers. You can interpret them as unsigned numbers in the range 0 to 2^{32}-1, or signed numbers in the range -2^{31} to 2^{31}-1. However, armasm makes no
distinction between -^{32}-

`n`

and 2`n`

. Relational operators such as >= use the
unsigned interpretation. This means that 0 > -1 is `{FALSE}`

.a SETA 256*256 ; 256*256 is a numeric expression MOV r1,#(a*22) ; (a*22) is a numeric expression