6502中$#和%的意义是什么?
平台
- 6502模拟器
- DASM 汇编器
- 视窗 10
我有数字从
#2
$2F
%0000111
我不明白为什么#$ % 用在6502 的汇编代码中?
有时 ldx #$FF
使用 #$FF 加载 x 寄存器
为什么这里用了两个符号?
回答
DASM 允许以二进制、八进制、十进制和十六进制表示数字。
- 二进制数使用
%前缀(例如%1101)。 - 八进制数使用
0前缀(例如015)。 - 十进制数不使用前缀(例如
13)。 - 十六进制数字使用
$前缀(例如$0D)。
该#符号用于指定立即寻址:
LDA 0 ; Load the byte from address 0 in memory into register A
LDA #0 ; Load the value 0 into register A
当然,可以将立即寻址与不同的数字基数结合起来,例如:
LDA #$FF ; Load the value $FF into register A