汇编语言(王爽) 第6章包含多个段的程序

程序到了内存中我们分为code(代码)段,也就是大部分指令段,数据段,栈

6.1 在代码段中使用数据

上图 dw表示define word定义一个字,16位

会出现cs执行的前16位是数据段,后面才是指令,所以要把IP设成10h

或者直接在第一条指令前面在start,再在最后面的end start

程序运行的第一条不是汇编指令可能会报错把

6.2 在代码段中使用栈

这的题目都是从内存单元的数据换到另一个内存单元

开始奇怪,为啥不直接换,还要专门定义一个栈空间出来做个中间体

查了资料才知道,内存单元的内容是不能直接和内存单元的互换的

6.3 将数据,代码,栈放入不同的段

这里才真正看懂了汇编的雏形

code部分,开始结束

data部分,开始结束

stack部分,开始结束

分别代表了指令,数据和栈。优雅~~~~~~~~

下面都是些栗子,我自己打打练练手,就不放了

EOF

原文地址:https://www.cnblogs.com/wz0107/p/5380171.html