网站大量收购独家精品文档,联系QQ:2885784924

3 汇编语言程序设计(伪指令).ppt

  1. 1、本文档共15页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章 汇编语言程序设计 本章重点: 理解汇编语言的基本概念 汇编语言源程序的基本结构 了解伪指令的功能 掌握定义数据、符号、段等伪指令的使用方法 能编写格式正确的汇编程序 5.1 MASM 汇编语言基础 一、汇编语言的基本概念 程序设计语言一般可分为机器语言、汇编语言和高级语言三大类。 机器语言是唯一能被计算机直接识别和执行的二进制指令代码集合所表示的面向机器的语言。 汇编语言是一种面向机器的低级程序设计语言。汇编语言以助记符的形式表示每一条计算机指令,用指令助记符、符号地址和标号等书写程序的语言。汇编语言源程序就是用汇编语言编写的程序,简称汇编语言程序。 汇编语言源程序必须翻译转换成机器语言才能执行 。 1、汇编语言的主要特点: (1)汇编语言的优点: 程序员可直接、有效地控制系统硬件; 形成的可执行文件运行速度快、占用主存容量少,可以编写在“时间”和“空间”两方面最有效的程序。 (2)汇编语言的缺点: 与处理器密切有关; 需要熟悉计算机硬件系统、考虑许多细节; 编写繁琐,调试、维护、交流和移植困难。 2、汇编语言的应用场合 程序要具有较快的执行时间,或只能占用较小的存储容量; 程序与计算机硬件密切相关,程序要直接有效地控制硬件; 分析具体系统尤其是该系统的底层软件、加密解密软件、分析和防治计算机病毒等。 二、汇编语言的语句格式 编程的第一步是编写源程序。源程序文件必须保存为扩展名为.asm的文件,且文件名不能超过8个ASCⅡ码字符。源程序所使用的指令包括两种,指令和伪指令。指令是指机器已存在的指令,反汇编后仍然是这条指令。如 MOV AX,1000H 伪指令是告诉编译器的一些说明性语句,但CPU中无此指令。如 A1 DB 12H 这是用伪指令DB定义字节变量的语句并标记为A1的地址。 调试程序DEBUG 三、 语句类别 在汇编语言中所使用的语句,可分为指令语句、伪指令语句和宏指令语句3种基本的语句。 用汇编语言编写的源程序是由许多条汇编指令组成的,每个语句包含1~4项组合,即标识符(label)、指令(instruction)、操作数(operand)及注释(comment)。 1、 指令语句 指令语句格式: [标号:] 指令助记符 [操作数],[操作数] [;注解] 2、 伪指令语句 伪指令语句格式: [名字] 伪指令定义符 [表达式] [;注解] 伪指令语句(也称指示性语句),只是给汇编程序提供一些控制信息,帮助汇编程序正确汇编指令性语句,在汇编时被执行,没有对应的机器码,称伪指令语句;且汇编时,伪指令语句不被编译成机器指令;在执行时无相应的指令可执行。 ① 伪指令语句指导软件MASM的执行过程,告诉MASM汇编阶段如何做,亦即指导汇编过程。 ② 伪指令定义符表示不同的伪指令。 [例] XXX DB 50 YYY DB ‘HOW ARE YOU’ CONT EQU 5 上面都是伪指令语句,它们只是给汇编程序提供一些控制信息,帮助汇编程序正确汇编指令性语句。 1 符号定义语句EQU及= (1)等价语句EQU EQU伪指令把常数、表达式等用符号来表示。在程序中,恰当的使用符号,不仅方便程序的书写和阅读,而且对程序的调试与修改很有利。 格式:符号名 EQU 表达式 (2)等号语句(=) “=”伪指令可给初始变量赋值。格式为:符号名=数值表达式 如:COUNT=100 TIME=50 由“EQU”定义的符号,在整个程序中通常不可以被重新定义。如: CNT EQU 100 CNT EQU 200 ;此定义错误 等号可以重定义。值得注意的是,‘EQU’和‘=’伪指令并不分配存储单元,用于给常量,符号等另取名字。 2 数据定义语句 该类伪指令用来定义存储空间及其所存数据的长度。常用的数据定义伪指令格式为: [变量名] DB/DW/DD 表达式 表达式可以是:数值表达式;?表达式;地址表达式(对DB无效);字符串表达式(仅DB有效);N…DUP(表达式),N为重复因子。 DB:定义字节,即每个数据是1个字节。 DW:定义字,即每个数据占1个字(2个字节),低字节放低地址。 3 段定义语句 (1) 段定义语句 一个完整的汇编源程序一般由3个段组成,即堆栈段、数据段和代码段。段定义伪指令可将源程序划分成若干段,以便生成目的代码和连接时将各同名段进行组合。 段定义伪指令一般格式为 : 段名 SEGMENT [定位类型] [组合类

文档评论(0)

wxc6688 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档