1

そのため、配列の必要なバイト/ワードオフセットを計算する次のコードを思いつきました。

    org $1000
NROWS db 3
NCOLS db 3
D2ARR_1 db 0, 0, 0, 0, 0, 0, 0, 0, 0
D2ARR_2 dw 0, 0, 0, 0, 0, 0, 0, 0, 0
byteOffset rmb 1
wordOffset rmb 1
row db 2
column db 2

    org $4000
Main:
    ldaa row
    ldab column
    MUL
    stab byteOffset

    ldaa row
    ldab column
    MUL
    ldaa #2
    MUL
    stab wordOffset

しかし、何らかの理由でストア アキュムレータ b が機能していません。シミュレータでデバッグしていますが、byteOffset と wordOffset のメモリ位置は変わりません。それらは、予約ストレージとは対照的に、予約メモリ バイトを使用して定義されていますが、これは正しいと思います (両方を試しました)。b の値は正しいですが、スタブ行は単に何もしていません。

私のデバッグでは、実行されているコマンドは

4007  STAB  $101d

アキュムレータ B は値 4 を含み、メモリ位置 101d は完全にフリーで書き込み可能です。

どんな助けでも大歓迎です、

ありがとう

4

0 に答える 0