0

我一直在试图弄清楚为什么这个程序将 FF 加载到 D1 中。这是代码:

    ORG    $1000

START:
    MOVE.B      pattern,D1
    SIMHALT

pattern     EQU     $AA50

    END    START

我的想法是模式是十六进制的。这是一个词。我只是将模式的最低有效字节移动到 D1 中。这个最低有效字节是十六进制的 50,二进制是 01010000。我希望 D1 包含 $00000050 但它包含 $000000FF。我不知所措。FF 将是二进制的 11111111,它(显然)不是 01010000。

任何帮助,将不胜感激。我正在使用 Easy68k。

4

1 回答 1

2

看起来您正在从地址 $0000AA50 加载 FF。这是我的猜测,但我会尝试看看是否是这样。

**-----------------------------------------------------------------------------

    ORG    $1000

START:

    MOVE.B #pattern,D1  ;Declare pattern as a
                        ;Hexadecimal using #
    SIMHALT

pattern EQU $AA50       ;ERRROR:This will exceed 8 bits
                        ;Else use MOVE.W

*pattern EQU $50        ;This works too using MOVE.B

END    START

**-----------------------------------------------------------------------------
于 2014-11-13T06:57:52.513 回答