第5章汇编语言与程序设计分析.ppt

  1. 1、本文档共28页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第5章汇编语言与程序设计分析

第 5 章 汇编语言与 程序设计 5.1 汇编语言基础 计算机语言包括: 程序设计与执行过程 汇编语言包括的语句 指令性语句: CPU执行的指令,编译后生成目标代码, 要求的操作在执行程序时完成。 指示性语句: CPU不执行的指令,编译后生不生成目标代码, 要求的操作由汇编程序完成。 指令性语句 由CPU执行的指令, 编译后生成目标代码 语句格式: [标号:] [前缀] 助记符 [操作数] , [操作数] [ ; 注释] 例 MIUS: ADD AX , BX ; 加法指令 INC BX ; BX加1 指示性语句 CPU不执行的指令; 由汇编程序执行,编译后不生成目标代码; 用于分配内存空间、定义变量、指示程序开始和结束等。 指令格式: [名字] 伪指令助记符 操作数 [,操作数,…] [ ;注释] 例 Y EQU 100 ;用符号(变量)Y代替数据100 指示性语句中的操作数 可以是: 寄存器 存储器单元 常量:数值或字符、字符串 变量:代表内存的数据区,程序视为存储器操作数 表达式:可包括各种运算符 5.2 常用伪指令 段定义伪指令 指定段寄存器伪指令 过程定义伪指令 变量定义伪指令 符号定义伪指令 段定义伪指令 说明逻辑段的起始和结束 说明不同程序模块中同类逻辑段之间的联系形态 段名 SEGMENT [定位类型] [组合类型] [’类别’] ┇ 段名 ENDS 例 定义数据段 DATA SEGMENT MEM1 DB 11H , 22H MEM2 DW 1234H DATA ENDS 指定段寄存器伪指令 功能: 用于说明指向逻辑段的寄存器 格式: ASSUME 段寄存器名: 段名 [,段寄存器名: 段名,… ] 例 DATA SEGMENT ;定义数据段 ┇ DATA ENDS CODE SEGMENT ;定义代码段 ASSUME CS: CODE , DS: DATA ;指定段寄存器 ┇ CODE ENDS 过程定义伪指令和返回指令 过程定义伪指令用于定义过程体 格式: 过程名 PROC [ NEAR / FAR ] ┇ RET 过程名 ENDP 过程的返回指令:RET 该指令一般位于子程序的最后 用于从堆栈中弹出断点地址,返回原程序。 变量定义伪指令DB/DW/DD 变量定义伪指令用于在数据段中定义变量,并按照变量类型分配存储单元和赋初值。 格式1:[变量名] {DB/DW/DD}表达式 格式2:[变量名] [重复次数]{DB/DW/DD}DUP 表达式 例如: ONE DB 25H ;定义1个字节变量ONE,存入初值25H TWO DB 5,7 ;定义2个连续的字节单元,分别存入初值5和7 THREE DB ? ;定义1个字节,数据任意 DATA1 DW 1234H ;定义1个字(2个字节),存入数据1234H 符号定义伪指令(EQU/=) 符号定义伪指令用于为常量、变量、表达式或其他符号定义一个名字,但不分配内存单元。 格式1:符号名 EQU 数值表达式 格式2:符号名 = 数值表达式 例如: CONSTANT EQU 10 ;用符号CONSTANT表示常数10 VAR EQU 30H+99H ;用符号VAR表示表达式30H+99H PURGE CONSTANT ;解除符号CONSTANT,以便重新定义 CONSTANT EQU 20 ;用符号CONSTANT表示常数20 DATA = 3 ;用符号DATA 表示3 DATA = 4 ;把符号DATA改为表示4 汇编语言程序设计 简单程序设计入门 汇编语言程序在一些对内存储器容量和存取速度要求比较高的情况下,如I/O接口驱动程序、实时控制程序、系统软件等设计中常被使用,而且比用高级

文档评论(0)

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

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

1亿VIP精品文档

相关文档