我是 6502 汇编编程的新手,我正在使用 cc65 套件(目标是 C64)。官方文档表明 "The assembler accepts the standard 6502/65816 assembler syntax" 但是我很难找到权威引用。我不明白的一件事是 6502 程序集 "="":=" 中两个赋值 (?) 运算符之间的区别。

例如在文件“c64.inc”中我们发现

BASIC_BUF       := $200         ; Location of command-line
BASIC_BUF_LEN   = 89            ; Maximum length of command-line

最佳答案

正如@JoachimPileborg 指出的那样,cc65 documentation 确实解释了它。第一个运算符 = 创建一个符号并为其分配给定值。第二个运算符 := 也使符号成为标签。标签的名称和值由编译器作为 debug information 的一部分导出(使用 -g 选项),这与常规符号不同。因此,使用 := 定义内存位置和 = 用于其他目的是有意义的。

关于assembly - = 和 := 的区别,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/55966184/

10-11 19:40