第二章_1 汇语言与汇编程序.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文档。上传文档
查看更多
第二章_1 汇语言与汇编程序

第二章 汇编语言与汇编程序 宏汇编语言及编程 汇编语言:一种面向机器的程序设计语言,是一种用符号表示的低级程序设计语言(机器语言的符号化描述)。 宏汇编语言:增加伪、宏指令语句构成汇编语言程序设计语言。 汇编: 汇编语言编写的程序不能由机器直接执行,必须经汇编程序翻译成机器语言程序。 检查源程序的语法错误,并给出出错信息。 产生目标文件(.OBJ);列表文件;(.LST)和交叉索引文件(.CRF文件)。 展开宏指令。 汇编过程 列表文件(.LST文件); 同时列出汇编语言源程序和机器语言目标程序的文件。 交叉索引文件(.CRF文件) 列出程序中使用的符号、变量和标号以及引用情况。 汇编过程 汇编与连接 EXAM.ASM ASCII 源程序 EXAM.OBJ 可选 EXAM.LST EXAM.CRF 机器码目标程序 MASM.EXE 汇编 汇编程序 EXAM.EXE EXAM.COM LINK.EXE 连接 连接程序 可执行程序 宏汇编语句的基本格式 指令性语句——由指令构成 [标号:] 操作码 操作数 [;注释] 如: START: MOV AX ,DATA 指示性语句——由命令(伪指令)构成 [名字/变量] 命令 参数 [;注释] 如: DATA SEGMENT AT 2000H (代码段不能如此指定段地址) 常量、变量和标号 常量 汇编源程序翻译成机器码目标程序期间已经有确定数值的量。分为数字常量和符号常量两类。 2.1符号指令中的表达式 数字常量:直接用数字进行表示的常量。 二进制、11110001020100B 十进制:12356D 十六进制:12ABH、0F56AH (字母打头必须前面补0,否则将出现汇编语法错误。) 如: MOV AX,100D MOV BL,0FAH MOV CL,1010 1000B 2.1.1常量和数值表达式 常量 符号常量:用标识符(常量名)表示的常量。 命名规则: 1)0≤31个ASCII码字符 2)由A~Z、a~z、0~9 、?、@、$及下划线构成。 3)?不能单独作为标识符。 4)不能为保留字及运算符。 合法标识符: STA_124$ MOV_? @103 非法标识符: STA+124$ MOV ? 2.1符号指令中的表达式 符号常量定义 常量名 EQU(=) 数值或字母 例如: AA EQU 30 BB = 1000H CC EQU QQ = ‘ABC’ MOV AX,AA MOV AL,AA MOV BX,BB 改善程序的可读性,程序的修改调试方便。 “=”可重复定义 EQU不可重复定义 常量不占有内存单元 2.1符号指令中的表达式 2.1.2变量 变量名是内存单元地址的符号表示,变量有三个属性。 字节 DB (8位)一个字节存贮单元 字 DW (16位)二个连续字节存贮单元 双字 DD (32位)四个连续字节存贮单元 双字 DQ (64位)8个连续字节存贮单元 双字 DT (80位)10个连续字节存贮单元 段地址: 段寄存器的值,变量一般定义在当前数据段 段内偏移地址 变量类型:变量所在存贮单元的类型,由存贮伪指令指定。 2.1符号指令中的表达式 变量定义 变量名 存贮伪指令 表达式1,表达式2,…… 例如: X DB 0AH AA EQU 1ABC3FH Y DW AA STR DB ‘ABCD12’ 重复子句表达式: N DUP (表达式) 例如: AA DB 10 DUP(0) BB DW 5 DUP(21*5),0DH,0AH DATA1 X 0AH PA Y 3FH 低 0BCH 1AH 高 STR 41H 42H 43H 44H 31H 32H (MOV AL,X;源操作数为直接寻址,等价于MOV AL,[X的偏移地址]) 2.1符号指令中的表达式 2.1.3标号 是指令性语句存放地址的符号表示,也可以是过程名。有三个属性,常用于指令的跳转和过程(子程序)调用。 例如: MOV SI,100H MOV DI,200H MOV CX,10H LOOP1: MOV AL,[SI] MOV [DI],A

文档评论(0)

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

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

1亿VIP精品文档

相关文档