6.3 将数据、代码、栈放入不同的段
之前在编写程序时,我们将数据、栈和代码都放在了一个段中。这样做有两个问题:
那么我们如何定义多个段呢?
定义多个段的方法:定义一个段的方法与定义代码段没有任何区别,但是不同的段要有不同的命名
stack segment
...
stack ends
code segment
...
code ends
对段地址的引用
现在有多个段了,那么如何访问段中的数据呢?我们要通过地址来访问,地址分为段地址和偏移地址。
在程序中,段名就相当于一个标号,它代表了段地址。如指令“mov ax,data”的含义就是将名称为“data”的段的段地址送入ax。而偏移地址则要看数据在段中的位置
“代码段”、“数据段”、“栈段”完全是我们的安排