自学王爽老师《汇编语言》笔记——第6章 包含多个段的程序

第6章 包含多个段的程序

程序取得所需空间的方法有两种:

  • 加载程序的时候为程序分配
  • 程序在执行过程中向系统申请

6.1 在代码段中使用数据

  • “dw”的含义是定义字型数据,即“define word”。
  • dw定义的数据处于代码段的最开始。
  • 在代码段中使用数据时需要在源程序中指明程序的入口所在。
  • end除了通知编译器程序结束外,还可以通知编译器程序入口在什么地方。
  • 我们若要CPU从何处开始执行程序,只要在源程序中用“end 标号”指明就可以了。

程序框架:

assume cs:code
code segment
        :
        :
        数据
        :
        :
start:
        :
        :
        代码
        :
        :
code ends
end start

6.2 在代码段中使用栈

dw的作用可以用来定义数据,也可以用它来开辟内存空间。

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

  • 我们用和定义代码段一样的方法来定义多个段,然后在这些段里面定义需要的数据,或通过定义数据来获得栈空间。
  • 在程序中,段名就相当于一个标号,它代表了段地址。
  • “代码段”、“数据段”、“栈段”完全是我们的安排
assume cs:code, ds:data, ss,stack

data segment
    dw ..,..,..,.., ...
data ends

stack segment
    dw 0,0,0,0,0,0,0, ...
stack ends

code segment
start: :
    :
    :
code ends

end start

实验5 编写、调试具有多个段的程序

  • 一个段最少占用16的倍数个字节。
  • 用db定义字节型数据。
  • 不指明程序的入口,程序将从我们代码的第一行开始读取。
#汇编语言##自学##读书笔记#
全部评论
感谢老师的分享,了解了
点赞 回复 分享
发布于 2022-08-30 10:58 陕西

相关推荐

10-05 11:11
海南大学 Java
投票
理想江南137:感觉挺真诚的 感觉可以试一试
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务