assembly - 汇编 DB 指令和整数值
问题描述
我正在尝试在Assembly 中编写一个简单的hello word。数据部分包含:
section .data
message: db 'hello, world!', 10
但是我对此有两个疑问:
1) 10 个整数是否使用 2 个字节存储?此外,是否使用 ASCII 表示存储 10 个整数?
2) 这 10 是否代表我们在 C 语言中找到的“\n”?
解决方案
- 它是一个字节。
- 是的,它和 c-style 是一样的
\n
。
此外,您可以使用反引号在 NASM 中使用 c 样式的字符串:
message: db 'hello, world!', 10
message: db 'hello, world!', 0x0A
message: db `hello, world!\n`
这些都是一样的。请参阅DB 和 Friends和Character Strings。
请注意,最后一个版本使用反引号而不是单引号。内单引号db '\n'
与db 92, 110
(反斜杠和小写 n 的 ASCII 代码) 相同http://asciitable.com/
推荐阅读
- php - 消息:为 foreach() 和消息提供的参数无效:数组到字符串的转换
- python - 类本地函数中的访问描述符
- selenium - 尝试在我的表单被填写的地方运行 UI 测试,但它不会
- c - 为什么构建时头文件中的任何修改都不会影响主文件?
- git - 如何正确地将错误直接修复到主分支?
- python - 如何用python打开一个mpp文件
- javascript - 让星星排列 CSS
- angular - 尽管在构造函数中设置并正确订阅了Angular Observable undefined(使用firebase)
- marklogic - 将 NodeJS 作为 SAML 连接到 MarkLogic 时出现 UTF-8 转义序列错误
- laravel - 在 Laravel 中加载 Xlsx 文件的数据