微机原理与接口技术第3章-7.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章-7.ppt

3.3 汇编语言中的标记、表达式和伪指令 3.3.1 汇编语言概况 程序设计语言的三层结构:机器语言、汇编语言、高级语言 规范程序 DATA SEGMENT DAI DB ‘INPUT STRING:$’ BUFDMA DB 80H DUP (?) DATA ENDS STACK SEGMENT ME1 DB 80H DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA,SS:STACK,ES:DATA START: MOV AX,DATA MOV DS,AX MOV DX,OFFSET MEI MOV AH,09H INT 21H MOV DX,OFFSET BUFDMA MOV AH,0AH INT 21H CODE ENDS END 汇编语言语句的种类和格式 两大类:指令性语句和指示性语句 指令性语句格式: [标号:] 助记符 [操作数] [;注释] 指示性语句格式: [符号名] 定义符 [参数] [;注释] 3.3.2 汇编语言中的标记 标识符 保留字 分界符 常数 注释 3.3.3 表达式 操作数 运算符 算术运算符 +、-、*、/、MOD 逻辑运算符AND、OR、XOR、NOT 关系运算符EQ、NE、LT、GT、LE、GE 分析运算符OFFSET、SEG、TYPE、LENGTH、SIZE、 综合运算符PTR、THIS 3.3.5 伪指令 宏汇编程序MASM提供了约几十种伪指令,其中有一些伪指令小汇编ASM不支持,例如宏处理伪指令等。根据伪指令的功能,大致可以分为以下几类: 方式伪指令.8086、 .386 数据定义伪指令DB、DW、DD 符号定义伪指令EQU、= 存储单元类型定义伪指令BYTE、WORD、DWORD 段定义伪指令SEGMENT、ENDS、ASSUME、ORG 过程定义伪指令PROC、ENDP、NEAR、FAR 程序结束伪指令END ⒈ 方式伪指令 ⑴ .8086。汇编程序将在8086/8088方式下操作。 ⑵ .386。汇编程序将在80386方式下操作。 2. 符号定义伪指令 ⑴ EQU(赋值伪指令) 名字 EQU 表达式 ⑵ =(等号伪指令) 名字=表达式 ⑶ LABEL(类型定义伪指令) 名字 LABEL 类型 比如: ABC EQU 220 XYZ EQU ABC ABC=10 ABC=ABC-1 3.数据定义伪指令 数据定义伪指令的一般格式为: [变量名] 伪操作符 操作数 [,操作数…] ⑴ DB 定义变量的类型为BYTE,给变量分配字节或字节串操作数。 ⑵ DW 定义变量的类型为WORD,给变量分配字操作数。 ⑶ DD 定义变量的类型为DWORD,给变量分配双字操作数。 (4)DQ、DT 除了常数、表达式和字符串外,问号“?”也可以作为数据定义伪指令的操作数,此时仅给变量保留相应的存储单元,而不赋与变量某个确定的初值。 当同样的操作数重复多次时,可用重复操作符“DUP”表示,其形式为: n DUP(初值[,初值…]) 比如: CR DB 0DH LF DB ‘AB’ BUF_DIS DB ? DO_2 DB 9 DUP (?) DONT DW 10 DUP (?) TABLE DB 00,01,03,02,06,04,05,07 DB 0FH,0EH,0CH,0DH,09,0BH,0AH,08 比如: COUNT1 DT ? 相当于语句 COUNT1 DB 10 DUP (?) 4.定义存储单元类型的伪指令BYTE、WORD和DWORD 比如: MOV BYTE PTR [DI],00 MOV WORD PTR [1000],00 INC BYTE PTR [DI] MOV DWORD PTR [2000],FFFFFFFFH 5.段定义伪指令SEGMENT、ENDS、ASSUME和ORG SEGMENT和ENDS ASSUME ORG …… START: MOV AX,DATA MOV DS,AX MOV AX,TOP MOV SP,AX MOV SI,OFFSET FIRST MOV DI,OFFSET SUM MOV BX,OFFSET SECOND MOV CX,04 CL

文档评论(0)

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

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

1亿VIP精品文档

相关文档