第三章微机原理与接口技术汇编语言程序设计基础091113.ppt

第三章微机原理与接口技术汇编语言程序设计基础091113.ppt

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

通过本章的学习,应当掌握以下内容: 操作数的寻址方式 常用指令的格式、功能、以及对标志位的影响 了解汇编语言的基本知识和特点。 熟悉汇编语言的程序结构、段定义以及语句的格式。 掌握汇编语言常用伪指令的使用方法。 熟练掌握汇编语言程序设计的基本方法:顺序结构、 分支结构、循环结构和子程序结构。 掌握程序设计中的宏指令和常用的系统功能的调用方法。 指令的寻址方式是指在指令中操作数的表示方式。 大多数指令操作数的表示方式实际是操作数存放的位置。 操作数存放的位置包括: 指令中的立即数 CPU内部的寄存器 CPU外部的内存储器。 操作数的地址在许多情况下是计算机在执行指令时根据指令的寻址方式通过计算产生的。 一般来说,指令的寻址方式越丰富,指令系统的功能就越强,编程的灵活性就越好。 8086的寻址方式有:立即寻址、寄存器寻址、存储器寻址、串操作寻址、外设I/O端口寻址、程序转移操作寻址。 存储器寻址又包括:直接寻址、寄存器间接寻址、基址寻址、变址寻址、基址变址寻址。 注意:寻址方式只能产生存储器的有效地址EA----段内偏移地址,由EA在BIU中在和段寄存器组合才能产生20位的物理地址。 在指令中立即数可用16进制数(以H结尾),2进制数(以B结尾)和10进制数(用D或不加特殊符号)表示。 也可以使用单引号‘’括起来的ASCII码表达的字符和字符串。 注意,如果16进制数以字母A~F打头,则必须在前面加上一个“0”,这是汇编程序的要求. 如:0B5H---- 16进制数B5H,0只用于识别,不保存。 B5H------机器把它视为一个变量名。 8位立即数: MOV AL,43H;16进制立即数 MOV AL ; 2进制立即数 MOV AL,67; 10进制立即数 16位立即数 :MOV AX,4142H ;16进制立即数 MOV AX,0100000101000010B; 2进制立即数 MOV AX,16706; 10进制立即数 32位立即数 :MOV EAX 字符或字符串立即数:MOV AL,‘A’ MOV AX,‘AB’ 立即数寻址方式由于操作数可以在取指令时就取入CPU,在CPU执行的时候不用等待取数据,所以执行速度很快。 立即数寻址常用于已知常数的场合。 例如:初始化程序中的赋初值。 运算时已知的常数。 注意:用单引号可以对字符的ASCII码进行立即数表示。 例:MOV AL , ‘A’;执行后AL=41H 80×86寄存器寻址中的寄存器 注意: (1)当指令中的源操作数和目的操作数都是寄存器时,必须采用同样字长的寄存器,否则汇编时会出错; (2)两个操作数不能同时为段寄存器; (3)目的操作数不能是代码段寄存器,例如指令MOV CS,AX。 寄存器寻址由于数据在CPU内部,所以指令的执行速度也很快。常将一些常用的数据调入到寄存器中,程序执行时就可以减少CPU访问内存的次数,提高程序的执行速度。 例如:MOV AL,DL;AL DL ADD AX,BX;AX AX+BX MOV DS,AX;DS AX INC BX ; BX BX+1 3 存储器寻址方式 在内存寻址方式中,操作数是某个内存单元的内容(值),指令中给出的是内存单元的有效地址EA(即偏移地址),段地址通常在隐含的某个段寄存器中。 EA是由EU根据存储器寻址方式计算产生的一个16位偏移地址,该地址送入BIU后,在BIU里进行地址变换产生20位的存储器物理地址。BIU由EA可以自动产生对应的段寄存器。 例1:MOV AX,[2000H] 将DS:2000H单元内容送入AX。 AL (DS*10H+2000H) AH (DS*10H+2001H) 例2:MOV AX,ES:[2000H] 将ES:2000H单元内容送入AX。 AL (ES*10H+2000H) AH (ES*10H+2001H

文档评论(0)

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

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

1亿VIP精品文档

相关文档