1

8 ビットの値を取り、それを D0 に書き込むプログラムを作成しようとしています。その後、4 ビット値にマスクされます。私が取得した数値は、A0 の数値にアクセスして D1 に書き込むことになっています。

この番号は出力に送信されます。

これは私がそれに行く方法です:

IN_PORT     EQU $FFFFF011
OUT_PORT    EQU $FFFFF019

mask        EQU $0F

ORG $4000

START:  MOVE.B  IN_PORT,D0
        ANDI.B  #mask,D0

        MOVE.B  (0,A0,D0),D1 * Problem area
        MOVE.B  D1,OUT_PORT

JMP START


ORG $5000

segCodes:
    DC.B    $77,$22,$5B,$6B
    DC.B    $2E,$6D,$7D,$23
    DC.B    $7F,$2F,$DD

私の問題は、コメントの周りの構文にあるようです。D1 には何も書き込まれず、出力にも何も送信されません。

4

1 に答える 1

1

次のコマンドでアドレスを追加するのを忘れていました。

MOVEA.L #$5000,A0

これでアドレスの宛先が書けるので、正しくアクセスできると思います。私が間違っている場合は、私を修正してください。

于 2013-02-14T12:30:25.800 に答える