微机原理第四章(2).ppt

  1. 1、本文档共45页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
传送指令数据流 1、通用数据传送指令 一般传送指令 MOV DST,SRC 执行 ( dst ) ← ( src ) 如:MOV AL,CL MOV BX,[SI] MOV [SI],CX 4、堆栈操作指令 压栈指令 PUSH SRC 如:PUSH DS PUSH [SI]; 连续两个单元的内容压入堆栈(SP-2) PUSH DWORD PTR [SI];连续四个单元的内容 出栈指令 POP DEST 如:POP AX;从堆栈顶部连续取两个单元的内容送AX ; (SP+2) POP DS POP [BX] XLAT指令应用: 若把字符的扫描码转换成ASCII码; 或数字0~9转换成7段数码所需要的相应代码(字形码)等 就要用XLAT指令。 例:内存的数据段中有一张十六进制数字的ASCII码表。 首地址为:Hex_table ,欲查出表中第10个元素(‘A’) 执行指令序列: MOV BX,OFFSET Hex_table MOV AL,0AH XLAT Hex_table 假设: (DS)=F000H, Hex_table=0040H (AL)=0AH 执行XLAT以后: (AL)=41H=(F004AH), 即“A”的ASCII码。 30H 31H 32H ... 39H 41H 42H ... 46H ... Hex_table Hex_table+1 Hex_table+2 Hex_table+0AH Hex_table+0BH Hex_table+0FH F B A 9 1 2 0 16进制数的ASCII码表 * * 第三节 8086/8088的指令系统 一. 概述 二. 数据传送指令 三. 算术运算指令 四. 逻辑运算指令 五. 控制转移指令 六. 处理机控制指令 七. 串操作指令 一.概述 8086/8088的指令系统中共有92种基本指令。 按功能分为6类: 数据传送指令 算术运算指令 逻辑运算和移位指令 串操作指令 程序控制指令 处理器控制指令 二 .数据传送指令 地址总线 AB 存 储 器 I/O 接 口 输 入 设 备 I/O 接 口 数据总线 DB 控制总线 CB 输 出 设 备 CPU 寄存器,存储器,I/O端口 数据传送是最基本、最重要的一种操作 实际程序中,使用的比例最高 change PROC LEA SI, num+2 MOV CL, num+1 MOV CH, 0 MOV AX, 0 MOV DI, 10 NEXT: MUL DI MOV BH, 0 MOV BL, [SI] AND BL, 0FH ADD AX, BX INC SI LOOP next ZERO: MOV BX, AX RET change ENDP 汇编子程例: 寄存器 寄存器 寄存器 内存单元 寄存器 I/O端口 设置寄存器、内存单元的初始值 按传送内容,可分为四类: 1. 通用数据传送 MOV, PUSH, POP, XCHG, XLAT 2. 地址传送 LEA, LDS, LES 3. 标志传送 PUSHF, POPF, LAHF, SAHF 4. 输入输出传送 IN, OUT 特点: 1. 除POPF、SAHF外,其他传送指令对标志位均无影响 2. 唯一允许以段寄存器做操作数的指令 且只有MOV、PUSH、POP这三条允许 * CS不能为目的操作数,不能对IP直接传送数据 * 堆栈操作不允许为字节操作 MOV DS,1234H; × MOV DS,ES; × MOV [BX],[SI]; × MOV CL,[BX+5] MOV指令特点及注意事项: 双操作数指令 (注意双操作指令的特点) 可进行字节或字传送 不允许直接将数据从一个存储器单元传送到另一个存储器单元。 MOV [ BX ] ,

文档评论(0)

优美的文学 + 关注
实名认证
内容提供者

优美的文学优美的文学优美的文学优美的文学优美的文学

1亿VIP精品文档

相关文档