What will the instruction move #>$3,var
mean in 68k assembly ?
Asked
Active
Viewed 557 times
3
-
1I would say a syntax error. The usage of `>` requires an assembler operand on the left side of it (to compare with the `$3` on the right side - a hexadecimal, `$`, value of `3` which, of course, is just `3`) but that is missing. – FrankH. Jun 27 '12 at 14:40
-
i'm not sure about this but ">" character might be representing the "high byte" or "high word" here. in "$3" case ">$3" equals to zero. but this ">" sign should be evaluated as a compiler level operator, not instruction level. "<" also means low byte/word in many assemblers. since i'm not sure about my answer, i write this as a supportive comment. – Emir Akaydın Jun 27 '12 at 14:58
-
I was wondering about the advanced memory indirect addressing modes the 68020 (or 30?) have. But I am not familiar with those, even less when using AT&T syntax. – Gunther Piez Jun 27 '12 at 16:10
-
@Bleamer, unless this is intended as a kind of puzzle, can you tell us where you saw such a syntax? – Clafou Jun 28 '12 at 14:43
-
It was part of legacy code implementation for a 68K based DSP. – Bleamer Jul 05 '12 at 10:31
1 Answers
2
I figured it out. The syntax #>
is an operator to force long (immediate) addressing mode in 68K and hence my instruction move #>$3,var
would mean - move the value $3 (0x03) to variable var
forcing the long addressing mode in 68K assembly. I am not certain about the processors supporting this operation.
@drhirsch almost nailed it.

Bleamer
- 637
- 9
- 24