汇编中带引号的字符串
strings with quotation marks in assembly
我用的是emu8086。我正在尝试定义一个字符串,例如“我不‘听’收音机”。
当我使用以下任一选项时:
mystr db "I don't ""listen"" to radio"
mystr db 'I don"t "listen" to radio'
并尝试打印 mystr,它分别打印以下任一内容:
I don't ""listen"" to radio
I don"t "listen" to radio
这不是我想要的(我不“听”收音机)。那么,我该如何定义这样一个字符串呢?
汇编程序在处理引号等嵌入的特殊字符的方式上有所不同,但 ASCII 码可以解决问题。
当您需要定义的字符串中有一些困难的字符时,您总是可以用它们的ASCII码替换它们。双引号的 ASCII 码是 34。
mystr db "I don't ", 34, "listen", 34, " to radio"
这将输出:
I don't "listen" to radio
在 NASM 中,您可以对嵌入双引号的字符串使用单引号(反之亦然):
mystr db "I don't ", '"listen" to radio'
我用的是emu8086。我正在尝试定义一个字符串,例如“我不‘听’收音机”。
当我使用以下任一选项时:
mystr db "I don't ""listen"" to radio"
mystr db 'I don"t "listen" to radio'
并尝试打印 mystr,它分别打印以下任一内容:
I don't ""listen"" to radio
I don"t "listen" to radio
这不是我想要的(我不“听”收音机)。那么,我该如何定义这样一个字符串呢?
汇编程序在处理引号等嵌入的特殊字符的方式上有所不同,但 ASCII 码可以解决问题。
当您需要定义的字符串中有一些困难的字符时,您总是可以用它们的ASCII码替换它们。双引号的 ASCII 码是 34。
mystr db "I don't ", 34, "listen", 34, " to radio"
这将输出:
I don't "listen" to radio
在 NASM 中,您可以对嵌入双引号的字符串使用单引号(反之亦然):
mystr db "I don't ", '"listen" to radio'