%
¶A register name can optionally be prefixed by a ‘%’ character. So
register %r0
is equivalent to r0
in the assembly code.
#
¶The presence of a ‘#’ character within a line (but not at the start of a line) indicates the start of a comment that extends to the end of the current line.
Note: if a line starts with a ‘#’ character then it can also be a logical line number directive (see Comments) or a preprocessor control command (see Preprocessing).
@
¶Prefixing an operand with an ‘@’ specifies that the operand is a symbol and not a register. This is how the assembler disambiguates the use of an ARC register name as a symbol. So the instruction
mov r0, @r0
moves the address of symbol r0
into register r0
.
`
¶The ‘`’ (backtick) character is used to separate statements on a single line.
-
¶Used as a separator to obtain a sequence of commands from a C preprocessor macro.