簡體   English   中英

如何使用預定義的常量作為內存地址?

[英]How to use a predefined constant as a memory address?

我正在制作NES游戲。 我正在定義幾個常量來幫助我管理精靈。 我有

spriteyposition = $0200
spritetile = $0201
spriteattribute = $0202
spritexposition = $0203
sprite1 = $00
sprite2 = $04
sprite3 = $08
sprite4 = $0c
sprite5 = $10
sprite6 = $14
sprite7 = $18
sprite8 = $1c

我的用例如下:

我想修改精靈1的y位置

我做:

ldx sprite1
lda spriteyposition, x
adc #$8
sta spriteyposition, x

在我的用例中,spriteyposition應該是一個內存指針,但是我感覺到匯編器將其視為常規數

如何將spriteyposition稱為內存地址而不是數字?

在我的用例中, spriteyposition應該是一個內存指針,但是我感覺到匯編器將其視為常規數

你的感覺不正確。 此代碼匯編為預期的操作碼BD( LDA ABS,x )-沒有IMM,x尋址模式。

不正確的是

ldx sprite1

sprite1定義為$00 ,因此最終將地址$0000的值加載到X中。 您想要的是ldx #sprite1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM