I am doing an assignment for an information systems class and the professor decided to use psuedo-assembler. He used the
@
in
SUB @106, -2(104), 110
What does that symbol mean?
I am doing an assignment for an information systems class and the professor decided to use psuedo-assembler. He used the
@
in
SUB @106, -2(104), 110
What does that symbol mean?
In DEC's assembly languages (PDP-11, VAX) @ means indirect addressing mode, i.e. an extra level of indirection.
In your case, @106 means that the address of the operand is taken from the address 106.
106 and @106 is that in the first case the address of the operand is 106, and in the second case it's whatever is stored at the address 106. For example, if 110 is stored at 106, then @106 is equivalent to 110.
Commented
Jun 26, 2012 at 20:00
C, the term indirection means adding an asterisk * in front of a pointer. Since you can interpret any number as a pointer in assembly language, you can think of @ as roughly corresponding to C's asterisk *.
Commented
Jun 26, 2012 at 20:05