LDA/STA 命令中的 < 或 > 是什么意思?

What do < or > mean in LDA/STA command?

我了解 6502 指令集的基础知识,但遇到了这段让我感到困惑的代码。

在我的 6502 手册中找不到任何关于这些的参考。

< 和 > 表示什么?

CLBASE  = 0
BPTR    = 
ARM .BYT ,  

LDA #<ARM
STA BPTR
LDA #>ARM
STA BPTR+1
LDA #>CLBASE

前缀#<指定操作数的低字节,#>指定操作数的高字节。

例如

LDA #>CLBASE ;This will be #
LDA #<CLBASE ;This will be #[=10=]

大多数汇编程序支持的 6502 派生设备范围内都有一个汇编程序约定,例如 ACME for instance. Here's the relevant section from WDC's W65C816S 8/16–bit Microprocessor datasheet

| Operand     | One Byte Result | Two Byte Result |
|-------------|-----------------|-----------------|
| #020304  | 04              | 0403            |
| #<020304 | 04              | 0403            |
| #>020304 | 03              | 0302            |
| #^020304 | 02              | 0201            |