汇编语言学习笔记 - 第四章

本文详细介绍了汇编语言学习的第四章内容,涵盖了从编写源程序到执行的过程,包括伪指令、源程序结构、编译、连接和程序执行。讲解了汇编指令与伪指令的区别,以及如何通过段定义、汇编程序结束和假设伪指令来组织源程序。同时阐述了程序在内存中的加载与执行机制。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

第 4 章 第一个程序

4.1 一个源程序从写出到执行的过程

  • 编写汇编程序

    • 使用文本编辑器(如记事本等),用汇编语言编写汇编源程序
    • 目的是产生一个存储源程序的文本文件
  • 对源程序j进行编译连接

    • 使用汇编语言编译程序对源程序文件中的源程序进行编译,产生目标文件;再用连接程序对目标文件进行连接,生成可在操作系统中直接运行的可执行文件。
    • 可执行文件包含两部分:
      • 程序(从源程序中的汇编指令翻译过来的机器码)和数据(源程序中定义的数据)
      • 相关的描述信息(比如:程序有多大,要占用多少内存空间等)
    • 目的是产生一个可在操作系统中运行的可执行文件
  • 执行可执行文件中的程序

    • 在操作系统中,执行可执行文件中的程序。
    • 操作系统依照可执行文件中的描述信息,将可执行文件中的机器码和数据加载入内存,并进行相关的初始化(比如设置CS:IP指向第一条要执行的指令),然后由 CPU 执行程序。

4.2 源程序

举例:程序 4.1
在这里插入图片描述

1. 伪指令

  • 汇编源程序中包含两种指令:一种是汇编指令,另一种是伪指令。
  • 汇编指令是有对应的机器码指令,可以被编译为机器指令,最终被 CPU 所执行。
  • 伪指令没有对应的机器码指令,最终不被 CPU 所执行。
  • 伪指令是由编译器来执行的指令,编译器根据伪指令来进行相关的编译工作。

以下介绍三种伪指令:

  1. 段定义伪指令
XXX segment
    ...
XXX ends
  • segment 和 ends 成对使用,定义一个段,segment 表示段开始,ends 表示段结束。
  • 一个段必须有一个名称来标识。
  • 一个汇
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值