3_语言格式辩析.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
第三章汇编语言程序格式 第三章 汇编语言程序格式 概 述 3.1 汇编语言程序的开发 3.2 参数、变量和标号 3.3 程序段的定义和属性 3.4 复杂数据结构 要点及习题分析 概述1 概 述 1.“汇编”的含义?手工汇编 机器汇编 2.什麽是汇编程序? 3.什麽是伪指令?伪指令的作用; 伪指令与机器无关,取决于汇编程序的版本,版本越高,提供的伪指令数目增加,功能增强;如MASM6.0提供了.IF/.ENDIF等语句,使汇编语言程序设计类似高级语言的形式。 概述2 4.教材的“硬指令”:指的是CPU指令集中的指令。硬指令的条数和功能取决于CPU,和汇编程序无关;但是,用汇编指令(符号指令)表示的硬指令,能否被汇编程序识别并翻译成机器指令,则与汇编程序的版本有关,如4.0以下的版本不支持386的32位指令,5.0开始支持32位指令,6.11版支持Pentium 但还不支持MMX指令6.12支持MMX指令)。 本章以MASM6.X为蓝本,介绍常用伪指令、操作符,汇编、连接、运行程序的过程,以及修改调试方法。 3.1 目录 汇编语言程序的开发 3.1汇编语言程序的开发 3.1.1 汇编语言程序的语句格式 1)执行性语句 2)说明性语句 3.1.2 汇编语言的程序格式 1)简化段定义格式 2)完整段定义格式 3.1.3 汇编语言程序的开发过程 源程序的编辑、汇编、连接、调试 3.1.1汇编语言程序的语句格式 3.1.1 汇编语言程序的语句格式 两类语句:1)执行性语句 2)说明性语句 1)执行性语句(硬指令、代码段) 标号(冒号是标号的一部分):代表该指令的逻辑地址,为分支、循环、调用等指令提供转移的目的地址。是用户自定义的标识符。定义规则:最多31个字母、数字及特殊符号,不能以数字打头;默认情况下,不区别大小写;不能使用保留字。标号定义只可能出现在代码段。 执行性语句 硬指令助记符: 任何一条处理器指令或宏指令。 操作数: 立即数、寄存器、存储单元;无操作数、单操作数和双操作数。 注释(分号是注释的一部分): 增加程序的可读性。注释不应是指令功能的重复。如对于指令“mov cx,25”,“25送入寄存器CX”毫无意义,可能应该写成“设置循环次数”。 说明性语句 2)说明性语句(伪指令、可位于任何段) 名字 伪指令助记符 参数,参数…;注释 名 字: 可以是变量名、段名、子程序名或宏名,这 些名字既反映逻辑地址,又具有自身的各种属性;对不同的说明性语句,其中的名字具有不同的属性,具体内容在介绍伪指令时介绍。名字也可以是一个常数或一个符号的代号,可称其为“符号名”,这种名字仅仅具有标识的作用。 名字与标号的区别:无冒号;可以在任何段定义(严格来说是变量名和符号名)。 名字的定义规则与标号相同。 说明性语句 e 伪指令助记符:本章主要内容。 参数:伪指令要求的内容,常数、变量、表达式… 注释:增加可读性。 两种语句的四部分要用分割符分开,操作数和参数用逗号,其他用空格或制表符。 3.1.2程序格式 3.1.2 汇编语言的程序格式 使用汇编语言编写程序时必须遵循的语法规则。 完整的汇编语言源程序由段组成:若干个代码段、数据段、附加段或堆栈段;独立运行的程序必须包含一个代码段,并指出程序的启动语句;所有的执行语句必须位于某一个代码段内,说明性语句可根据需要位于任一段内;堆栈段不是必须的,但最好设置堆栈段。 编写汇编语言源程序通常应遵循所谓“标准格式”,本书介绍标准格式的两种表示形式,一种符合MASM 5.0及更新版本的语法规则,称为“简化段定义格式”;另一种符合早期版本的语法规则,称为“完整段定义格式”(5.0及以后的版本也支持)。 简化段定义格式 例3.1a 简化段定义格式 ;lt301a.asm .model small .stack .data String db ‘hello,everybody!’,0dh,0ah,’$’ .code .startup ;说明程序的起点,设置DS、SS mov dx,offset,string mov ah,9 int 21h .exit 0 ;程序结束,形成返回DOS的指令 end 完整段定义格式 e 例3.1b 完整段定义格式 ;lt301b.asm mov ds,ax Stack segment stack mov dx,offset string dw 512 dup mov ah,9 Stack ends int 21h Data segment mov ax,4c00h String db ‘…………’ int 21h Data ends code ends Code segment ‘code’ end start

文档评论(0)

ccx55855 + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档