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

汇编语言:第4章汇编语言程序格式课件.ppt

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

第4章 汇编语言程序格式 主要内容 4.1 汇编程序功能 上机运行汇编语言程序的步骤 略 4.2 伪操作 4.3 汇编语言程序格式 4.4 汇编语言程序的上机过程 汇编语言程序格式 初 步 1、汇编语言程序框架 data_seg1 segment … data_seg1 Ends data_seg2 segment … data_seg2 Ends code_seg segment assume cs:code_seg, ds:data_seg1,es:data_seg2 start: mov ax,data_seg1 mov ds,ax mov ax,data_seg2 mov es,ax … code_seg ENDS END start 2、伪 操 作 汇编语言:主要用指令助记符来书写程序的一种编程语言 助记符:直接对应于指令系统中的指令,汇编以后可以产生可执行的目标代码 伪操作:即伪指令 汇编语言程序的语句 指令 如 MOV AX,[BX+10] 由伪操作和宏指令组成的语句 伪指令、宏指令 伪指令:在汇编时不产生目标代码,仅在汇编过程中起控制作用或指示作用。完成如数据定义、分配存储区、指示程序结束、段定义等功能 宏指令:将常用的一系列指令定义为一条宏指令,使用时可简化源程序书写。汇编时先对含有的宏指令进行预处理(宏展开),然后对宏展开之后的源程序进行汇编 3、段定义伪操作 完整段定义伪操作的格式如下 Segment_name SEGMENT …… Segment_name ENDS 段内内容: 数据段、附加段和堆栈段,一般是存储单元的定义、分配等伪操作 代码段中是指令及伪操作 (1)段和段寄存器的关系确定 用ASSUME伪操作指定,其格式为: ASSUME assignment, …, assignment assignment:说明分配情况,其格式为 Segment_register_name: segment_name 例: assume cs:code_seg,ds:data_seg1,es:data_seg2 段寄存器名必须是CS、DS、ES和SS(对386-:还可为FS,GS)中的一个 (2)段地址装入段寄存器 代码段中,还必须把段地址装入相应的段寄存器,如 mov ax,data_seg1 mov ds,ax mov ax,data_seg2 mov es,ax 代码段不需要这样做 4、程序开始和结束伪操作 在程序的开始部分: 用NAME或TITLE为模块取名字 NANE的格式是:NAME module_name TITLE的格式为: TITLE text 源程序结束: END [label] MASM6.0 入口点: .startup 出口点: .exit 5、汇编语言程序返回DOS 程序的返回 Mov ax,4C00H Int 21h 或用 DOS中断返回 INT 20H 6、数据定义及存储器分配伪操作 伪操作(指令)主要有两种: 数据定义伪指令和段定义伪指令 伪操作的格式: [变量] 助记符 操作数,…,操作数 [;注释] 变量(Variable)字段可有可无,它用符号地址表示 助记符:说明所用伪操作的助记符 DB, DW, DD, DQ, DT,DF (1)数据定义伪指令 DB, DW, DD, DQ, DT,DF 分别以字节、字、双字、8个字节、10个字节、6字节为单位定义数据 例4.1操作数可以是常数,或是表达式: DATA_BYTE DB l0,4,1OH DATA_WORD DW lO0,1OOH,-5 DATA_DW DD 3*20,OFFFDH 存储情况 (2)字符串操作数定义 MESSAGE DB ‘HELLO’ DB ‘AB’ DW ‘AB’ (3)操作数 ? 操作数 ?:保留存储空间,但不存入数据,原存储位置的数据可能还存在。 ABC DB 0,?,?,?,0 DFF DW ?,52,? 经汇编后的存储情况怎样? (4)复制操作符 DUP 例: ARRAY1 DB 2 DUP(0,1,2,?) ARRAY2 DB 100 DUP(?) 第一个语句与和语句 ARRAY1 DB 0,1,2, ?,0,1, 2,? 是等价的 DUP操作可以嵌套 ARRAY3 DB 100 DUP(0,2 DUP(1,2),0,3)

文档评论(0)

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

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

版权声明书
用户编号:8130065136000003

1亿VIP精品文档

相关文档