- 1、本文档共65页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
汇编第三章课件
程序状态字PSW 8086/8088存储器组织 第三章 8086指令系统 指令格式、寻址方式、指令系统 3.1 8086/8088指令格式 指令系统:微处理器所能处理的各种指令的集合,一般所指的是汇编指令 指令格式:由操作码和操作数两部分组成 操作码:CPU所能完成的规定的操作,如加、减、与、或…… 操作数:指令操作所需要的数据或数据所存放的地址,一般分为源操作数和目的操作数 3.2 8086/8088寻址方式 固定寻址 立即寻址方式 寄存器寻址方式 存储器寻址方式 (1)直接寻址方式 (1)直接寻址方式 (2)寄存间接寻址方式 (2)寄存间接寻址方式 (3)基址寻址方式 (3)基址寻址方式 (4)变址寻址方式 (5)基址变址寻址方式 (5)基址变址寻址方式 寻址方式总结 立即寻址和直接寻址的区别 MOV AL, 80H MOV AX, 1280H MOV AL, [1280H] MOV AX, [1280H] 寄存器寻址与寄存器间接寻址的区别 MOV AX, BX MOV AX, [BX] MOV AL, [BX] 存储器寻址方式有效地址和物理地址的计算 EA = 基址寄存器+变址寄存器+DISP PA = 段地址*10H + EA 基址寄存器BX和BP、变址寄存器SI和DI不能同时出现在一条指令中 在一条指令中可能同时存在着多种寻址方式 3.4 8086/8088指令系统 按照指令的助记符和寻址方式的不同,8086/8088指令系统可构成上千种指令,按功能可分为六类: 数据传送指令 算术运算指令 位操作指令 串操作指令 转移指令 处理机控制指令 数据传送指令 (1)通用数据传送指令 (1)通用数据传送指令 (2)入栈指令 (3)出栈指令 关于堆栈 (4)交换指令 (5)累加器专用传送指令 如何写出正确的MOV指令 (6)输入指令 (7)输出指令 (8)地址传送指令 (9)标志传送指令 二进制数算术运算指令 加法指令 加 1 指令 减法运算指令 减法运算指令 乘法运算指令 除法运算指令 位操作指令 算术逻辑移位指令 处理机控制指令 格式: OUT 端口地址,累加器 功能: 与IN相反,即将累加器的内容通过某端口输出 OUT 18H, AL MOV DX,288H OUT DX, AX 返回 格式: LEA 目的操作数, 源操作数 功能: 源操作数的有效地址EA传送给目的操作数 格式: LDS 目的操作数, 源操作数 功能: 源操作数的双字单元内容传送给目的操作数和DS 格式: LES 目的操作数, 源操作数 功能: 源操作数的双字单元内容传送给目的操作数和ES MOV BX,0408H MOV SI, 2000H LEA BP,[BX+SI+6] EA=(BX)+(SI)+6=240EH BP = EA = 240EH 30C44H 30C43H 30C42H 30C41H 30C40H 00 25 C0 44 设(DS)=30C0H,有关存储器的状态如右图所示,执行指令 LDS SI, [40H] PA=DS*10H+40H=30C40H SI=2500H DS=44C0H 返回 LAHF; 将标志寄存器的低8位送AL SAHF; 将AH送标志寄存器的高8位 PUSHF; 标志寄存器的内容压入堆栈 POPF; 将栈顶的内容弹至标志寄存器 SAHF指令可直接改变标志寄存器的状态 返回 算术运算指令 算术运算指令包括加、减、乘、除运算,即可以是单字节数据运算,也可以是双字节数据的运算,算术运算指令除了产生运算结果外,还对标志寄存器中相应的标志位产生影响。 1、加法指令 (ADD、ADC、INC) 2、减法指令 (SUB、SBB、DEC、CMP) 3、乘法指令 (MUL、IMUL) 4、除法指令 (DIV、IDIV) 格式: ADD 目的操作数, 源操作数 功能: 源操作数+目的操作数→目的操作数,并影响标志位 ADD AL, BL; 设(AL)=0A4H,(BL)=5CH 0A4 +)5C 100 执行指令后,(AL)=00H(并非100H) CF=1,PF=1,AF=1,
文档评论(0)