- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
[计算机软件及应用]第3章微型计算机指令系统
第 3章 我们重点掌握几个内容: 熟悉指令格式 掌握各种寻址方式 掌握指令的功能与用法 熟悉编程中使用的寄存器组 简单地认识汇编语言 3.3 8086指令系统什么是指令系统? 计算机的指令系统就是指该计算机能够执行的全部指令的集合 每种计算机都有它支持的指令集合 16位8086指令系统是Intel 80x86系列微处理器指令系统的基础 学习指令的注意事项 指令的功能——该指令能够实现何种操作。通常指令助记符就是指令功能的英文单词或其缩写形式 指令支持的寻址方式——该指令中的操作数可以采用何种寻址方式(任何指令都存在寻址方式,在一个指令中,可能会出现多种寻址方式,换言之,寻址方式的概念是针对操作数的,而非针对指令。) 指令对标志的影响——该指令执行后是否对各个标志位有影响,以及如何影响。 其他方面——该指令其他需要特别注意的地方,如指令执行时的约定设置、必须预置的参数、隐含使用的寄存器等 3.3.1 数据传送类指令(Data Transfer) 数据传送是计算机中最基本、最重要的一种操作 传送指令也是最常使用的一类指令 传送指令把数据从一个位置传送到另一个位置 除标志寄存器传送指令外,均不影响标志位 一、 通用传送指令 提供方便灵活的通用传送操作指令 MOV 、 PUSH 、 POP 、 XCHG 、 XLAT 1. 基本传送指令MOV(movement) 1. 基本传送指令MOV 2. 堆栈操作指令 PUSH POP 8086对堆栈区的操作特点: 1. 堆栈操作指令 PUSH POP 使用堆栈指令: ①堆栈操作是字操作指令,不要写出“PUSH AL”等。 ②在“POP”指令中,“POP CS”为非法指令。 ③堆栈中的数据弹出后,数据并没有在堆栈中消失, 除非压入新数据,画图时注意。 ④堆栈操作指令不影响标志。 注意:执行堆栈操作指令时,数据的写入(到哪儿)和(从哪儿)读出不需要提供地址,而是根据写入的顺序决定读出的顺序! 3. 交换指令 XCHG 3. 交换指令 XCHG ① LAHF ;AH←标志寄存器低8位,即SF、ZF、AF、PF、CF送AH ;相应位,不影响标志。 ② SAHF ;标志寄存器低8位← AH,该条指令影响前五个标志。 ③ PUSHF ;标志寄存器入栈,不影响标志。 ④ POPF ;标志寄存器←SS:[SP],SP←SP+2; ;该指令影响标志。 1、 LAHF (load AH from flage) 2、SAHF (store AH into flags) 3、PUSHF (push flages onto stack) 标志寄存器入栈指令 3、POPF (POP flags off stack) 标志寄存器出栈指令 POPF 与PUSHF一般用在子程序和中断程序的首尾,起到保护主程序标志和恢复主程序标志的作用。 8086/8088指令系统中能够对字节、字、双字进行算术运算: 包括加、减、乘、除。利用调整十进制调整指令和ASCII调整指令,还可以对BCD码表示的十进制数进行算术运算。在乘法和除法可以用不同的指令对无符号数和符号数进行运算。 能否用同一套加、减、乘、除指令即实现对无符号数的运算,又实现对有符号数的运算呢? 对于加法和减法来说,无符号数和有符号数可以采用同一套指令,对乘法和除法来说,不能! 加法和减法采用同一套指令有两个条件: (1)要求参与运算的两个数同为无符号数或有符号数 (2)要用不同的方法检测无符号数或有符号数的运算结果是否溢出! ①OF仅仅对有符号数运算有意义。 (正数sub正数)或(负数sub负数) OF=0 正数sub负数,结果的符号位为0, OF=0 结果的符号位为1, OF=1 负数sub正数,结果的符号位为1, OF=0 结果的符号位为0, OF=1 ②CF设置:(借位标志,仅仅对无符号数运算有意义,对有符号数运算无意义。) 够减CF=0;不够减 CF=1。 注:虽然减法也是使用加法器进行加法运算得到结果的,但是CF标志位的生成电路是基于无符号数运算逻辑的,与运算的具体实现过程无关!因此在判断减法操作中的CF标志时,一定要采用减法来判断,这样才与CPU中CF生成电路的判断逻辑一致! 1. 压缩BCD码调整指令(packed BCD adjust) DAA 注释: 如果做BCD码加法运算,ADD、ADC指令后应紧跟DAA指令,以保证结果正确。 调整对象只能是AL寄存器(BCD码运算只能使用以AL寄存器为目的操作数的
您可能关注的文档
最近下载
- 2024年新人教道德与法治一年级上册全册教学课件(新版教材).pptx
- 一种去除皮革醛类VOCs的方法.pdf VIP
- 党员发展对象思想汇报.doc VIP
- 07 文言文四类实词积累方法(文言文阅读)-2026年高考语文一轮复习之古诗文专题课件(全国通用).pptx
- 网御网络审计系统V3.0用户使用手册.doc.pdf VIP
- 泥水工劳务承包合同(2024版).docx VIP
- 初三英语完形填空十篇(含答案).docx VIP
- 球磨机设计完整版.doc VIP
- 2024年《关于加快经济社会发展全面绿色转型的意见》学习解读课件.pptx VIP
- DB44_T 2693-2025电化学储能电站安全管控技术规范.pdf VIP
文档评论(0)