dc.b 和字符串的 Gnu 程序集 (GAS) 错误
Gnu Assembly (GAS) error with dc.b and String
我遇到了这个 Gas 操作的新问题:
dc.b "MESSAGE"
这给了我一个 Bad Expression 错误:
Error: Rest of line ignored. First ignored character is `M'.
我尝试了很多逃脱和任何技巧,但都没有成功。
通常我这样使用字符串:
.ascii "MESSAGE"
但这不能用于分配地址:
dc.b #0,d1
因为如果我尝试这样做:
.ascii "MESSAGE",0xFF
我得到以下结果:
Error: Rest of line ignored. First ignored character is `0'.
所以不能替换 dc 语句。
谢谢!
编辑:我忘记在第 0 行提到这个错误:
myasmfile.s:0: Warning: end of file in comment; newline inserted
我也想不通为什么会这样...
if i try this:
.ascii "MESSAGE",0xFF
i get the following result:
Error: Rest of line ignored. First ignored character is `0'.
改为这样做:
.ascii "MESSAGE"
dc.b 0xFF
0xFF
是一种不寻常的字符串终止符。如果您使用更标准的零终止字符串,您可以使用 .asciz
指令,它会为您添加终止符:
.asciz "MESSAGE"
要获取字符串的地址,只需在其前面放置一个标签:
foo: .asciz "MESSAGE"
然后你可以做:
move.l #foo,a0
我遇到了这个 Gas 操作的新问题:
dc.b "MESSAGE"
这给了我一个 Bad Expression 错误:
Error: Rest of line ignored. First ignored character is `M'.
我尝试了很多逃脱和任何技巧,但都没有成功。
通常我这样使用字符串:
.ascii "MESSAGE"
但这不能用于分配地址:
dc.b #0,d1
因为如果我尝试这样做:
.ascii "MESSAGE",0xFF
我得到以下结果:
Error: Rest of line ignored. First ignored character is `0'.
所以不能替换 dc 语句。
谢谢!
编辑:我忘记在第 0 行提到这个错误:
myasmfile.s:0: Warning: end of file in comment; newline inserted
我也想不通为什么会这样...
if i try this:
.ascii "MESSAGE",0xFF
i get the following result:
Error: Rest of line ignored. First ignored character is `0'.
改为这样做:
.ascii "MESSAGE"
dc.b 0xFF
0xFF
是一种不寻常的字符串终止符。如果您使用更标准的零终止字符串,您可以使用 .asciz
指令,它会为您添加终止符:
.asciz "MESSAGE"
要获取字符串的地址,只需在其前面放置一个标签:
foo: .asciz "MESSAGE"
然后你可以做:
move.l #foo,a0