Thats not Intel syntax, its AT&T syntax, also called GAS syntax.
the $
prefix is for immediates (constants), and the %
prefix is for registers (they are required1).
For more about AT&T syntax, see also the [att]
tag wiki.
1 Unless the noprefix
option is specified, see here & here. But usually noprefix
is only used with .intel_syntax noprefix
, to get MASM-like syntax.