- 1、本文档共45页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Lesson微机原理及应用.ppt
微机原理及应用B 第3章 8086/8088 指令系统与寻址方式 (第3讲) 3.4 8086/8088 指令系统 位操作指令包括逻辑运算指令、移位指令和循环移位指令。 (一)逻辑运算指令 逻辑运算指令包括逻辑非、逻辑与、逻辑或、逻辑异或和位测试指令。 1 逻辑非指令 NOT 逻辑非指令对其操作数按位求反。其一般形式为: NOT dest 这里,dest 可以是 reg 或 mem。指令对标志寄存器无影响。 2 逻辑与指令 AND 逻辑与指令对两个操作数中各对应位进行 “与” 运算,运算的结果存放在 dest 中。其一般形式为: AND dest,src 其中:dest 和 src 均可以是 reg 或 mem,src 还可以是 imm。该指令将标志寄存器中上述 6 个标志位除 AF 外全部清 0,而对 AF 位的影响不确定。 3 测试指令 TEST 该指令的一般形式为: TEST dest,src 其中:dest 和 src 均可以是 reg 或 mem,src 还可以是 imm。该指令完成的操作与AND完全相同,对 dest 中的值按 src 所指定的位进行测试,运算结果不保存。可以检查指定位的值是否为 0,若是,则将标志寄存器中的 ZF 置 1;否则置 0。 4 逻辑或指令 OR 逻辑或指令对两个操作数中各对应位实施 “或” 运算,运算结果保存在 dest 中。其一般形式为: OR dest,src 其中:dest 和 src 均可以是 reg 或 mem,src 还可以是 imm。该指令将标志寄存器中上述 6 个标志位除 AF 和 SF 外全部清 0,SF 位的值取决于运算后 dest 中的最高位是否为 1,而对 AF 位的影响则不确定。 5 逻辑异或指令 XOR 逻辑异或指令对两个操作数中各对应位实施 “异或” 运算,运算结果保存在 dest 中。其一般形式为: XOR dest,src 其中:dest 和 src 均可以是 reg 或 mem,src 还可以是 imm。该指令将标志寄存器中 的 SF 和 PF 产生影响,而对 AF 位的影响则不确定。 对一个寄存器实施清零操作是程序设计中的一种常用操作,清零方法有许多种。例如: 1 算术左移指令 SAL 该助记符是由英文 Shift Arithmetic Left 简化而来的。其一般形式为: SAL dest,1/CL 其中:dest 可以是 reg 或 mem,而另一个操作数只能是立即数 1 或 CL。 例【3-36】 MOV AL, 0AH ;0000 1010B,10D SAL AL, 1 ;0001 0100B,14H 20D,CF 0 2 逻辑左移指令 SHL 该助记符是由短语 Shift Left Logically 简化而来的。该指令的用法和功能与 SAL 指令完全相同。 例【3-39】 MOV AL, 0AH ;0000 1010B,10D SHR AL, 1 ; 4 算术右移指令 SAR 该指令所涉及的操作数与 SAL 相同,但操作略有不同。该指令的执行过程如下图所示。 1 不带进位循环左移指令 ROL 该助记符是由英文 Rotate Left 简化而来的。该指令的用法与上述移位指令相同,但其操作结果则不尽相同,如下图所示。 2 不带进位循环右移指令 ROR 该指令的操作过程如下图所示: 3 带进位循环左移指令 RCL 该指令的操作过程如下图所示: 例【3-45】把AL中的数 x 乘10。 移位指令功能示意 所谓 “串”,指的就是存放在一块连续存储单元中的一批 8 位或 16 位数据,其典型应用就是 “字符串”,也可以将串看成是高级语言中的数组。 1 串传送指令 MOVS? MOVS 是英文 “Move String” 的缩写,即,将源地址中的串传送到目标地址中。 其中 ? 可以为空、B 或 W,因此,它们实际上是三条指令: MOVS dest, src MOVSB MOVSW 2 串装入指令 LODS? LODS 是英文 “Load String” 的缩写,其功能是将 DS:SI 作为首地址的串装入到 AL(8 位)或 AX(16 位)寄存器中。它们也是三条指令: LODS src LODSB LODSW 3 串送存指令 STOS? STOS 是英文 “Store String” 的缩写,其功能是将 AL(8 位)或 AX(16 位)寄存器中的数据存入 ES:DI 作为首地址内存中 。它们 也是三条指令: STOS dest STOSB STOSW 4 串比较指令 CMPS? CMPS 是英文 “Comp
您可能关注的文档
- CompoundDictation.ppt
- ControlWave系统designer组态.ppt
- COOLME糕点.ppt
- CortexM微控制器概述.ppt
- cpp基本数据类型运算符与表达式.ppt
- CP流行性乙型脑炎.ppt
- CT肝脏良性肿瘤.ppt
- CT读片练习.ppt
- C主打胶片.ppt
- C充电指示灯亮永康福达.ppt
- 2020年初中生物重点知识点掌握习题1044 .pdf
- 2020年部编版小学语文二年级下册《小马过河》说课稿附反思【共两套说 完整版.pdf
- 2020安保维稳工作个人事迹 .pdf
- 2020秋国家开放大学《管理英语4》形考任务1-8参考答案 .pdf
- 2021国家安全和必威体育官网网址宣传月知识竞赛题目及答案 .pdf
- 2020年高中物理 第6章 万有引力与航天 4 万有引力理论的成就课时作业.pdf
- 2021《违规吃请和公款吃喝问题自查报告》 .pdf
- 2021年--2021年上海市初中学生学业考试生命科学试卷及答案 .pdf
- 2020春人教版四年级语文下册-第2单元-8.千年梦圆在今朝 教案+说课稿+.pdf
- 2020高考历史总复习考点必杀800题 专练18 史学研究类必杀30题(含解析.pdf
文档评论(0)