目前我正在学习 x86 汇编以获得乐趣,我喜欢微控制器编程,所以我熟悉汇编。
目前我一直在寻找这个问题的答案,但似乎找不到...... DS寄存器,我知道它应该指向我程序中的全局数据,但我没有知道它是如何工作的。我正在使用 NASM,在大多数简单的程序中,我看到以下内容:
[组织 0x7C00] [位 16] 主要的: 移动斧头,0x0000 mov ds, ax 移动,[味精] 移动啊,0x0E mov bx, 0x0007 整数 0x10 跳转 $ 味精数据库'X' 乘以 510-($-$$) 分贝 0 dw 0xAA55
并且效果很好(即使我省略了粗体代码),但是如何?CPU 会自动加载从 0x0000 开始的全局变量吗?还是我缺少一些内在的东西?