8086 CPU算术运算指令详解
需积分: 10 130 浏览量
更新于2024-08-22
收藏 47KB PPT 举报
"算术运算指令在微机原理中的应用"
微机原理是计算机科学的基础,它涉及计算机系统的核心组成部分和工作原理。算术运算指令是微处理器执行的基本操作,用于执行数学运算,如加法、减法、乘法、除法以及其它相关操作。在8086CPU这样的早期处理器中,这些指令对于程序的运行至关重要。
算术运算指令分为多个类别:
A类指令包括加法和加带进位指令:
1. ADD DST, SRC:将源操作数SRC与目标操作数DST相加,并将结果存储在DST中。
2. ADC DST, SRC:类似于ADD,但还会加上当前的进位标志CF,用于处理溢出情况。
3. INC OPR:将操作数OPR的值增加1。
B类指令涉及减法和带借位减法:
1. SUB DST, SRC:从目标操作数DST中减去源操作数SRC,结果存储在DST中。
2. SBB DST, SRC:类似于SUB,但还会减去当前的进位标志CF,用于处理借位情况。
3. DEC OPR:将操作数OPR的值减少1。
4. NEG OPR:将操作数OPR取反,即加上其补码,相当于执行-OPR。
5. CMP OPR1, OPR2:比较OPR1和OPR2,但不改变它们的值,而是根据比较结果更新标志寄存器F。
C类指令涵盖乘法和除法:
1. MUL SRC:将AX或AX与BX/AX或CX/AX(取决于指令)中的源操作数SRC相乘,结果放在DX和AX中。
2. IMUL SRC:与MUL类似,但适用于带符号整数的乘法。
3. DIV SRC:用AX或DX:AX除以源操作数SRC,商在AL或AX中,余数在AH或DX中。
4. IDIV SRC:与DIV类似,但适用于带符号整数的除法。
D类指令涉及到字节和字的转换:
1. CBW:字节到字的转换,将AL的内容扩展到AX。
2. CWD:字到双字的转换,将AX的内容扩展到DX:AX。
E类指令用于辅助算术运算:
1. DAA:辅助加法指令,处理十六进制加法的进位和借位。
2. DAS:辅助减法指令,处理十六进制减法的进位和借位。
3. AAA:辅助加法,用于十进制调整,将AL中的两个低四位的BCD数字加在一起。
4. AAS:辅助减法,与AAA类似,但用于减法操作。
5. AAM:辅助乘法,将AL与10相乘并把结果分开到AL和AH中。
6. AAD:辅助除法,将AL和AH中的数字与10相加,用于十进制除法。
了解这些算术运算指令对于理解微处理器如何执行基本的算术运算至关重要。在编程时,正确使用这些指令可以提高程序的效率,同时避免因溢出和错误操作导致的问题。在8086CPU中,这些指令通过与ALU(算术逻辑单元)、标志寄存器和其他组件的交互来完成计算任务,进而执行更复杂的程序逻辑。
2010-01-08 上传
2013-01-30 上传
2022-10-19 上传
2021-09-28 上传
点击了解资源详情
点击了解资源详情
2021-12-17 上传
2011-05-01 上传
2012-05-24 上传
冀北老许
- 粉丝: 16
- 资源: 2万+
最新资源
- SSM动力电池数据管理系统源码及数据库详解
- R语言桑基图绘制与SCI图输入文件代码分析
- Linux下Sakagari Hurricane翻译工作:cpktools的使用教程
- prettybench: 让 Go 基准测试结果更易读
- Python官方文档查询库,提升开发效率与时间节约
- 基于Django的Python就业系统毕设源码
- 高并发下的SpringBoot与Nginx+Redis会话共享解决方案
- 构建问答游戏:Node.js与Express.js实战教程
- MATLAB在旅行商问题中的应用与优化方法研究
- OMAPL138 DSP平台UPP接口编程实践
- 杰克逊维尔非营利地基工程的VMS项目介绍
- 宠物猫企业网站模板PHP源码下载
- 52简易计算器源码解析与下载指南
- 探索Node.js v6.2.1 - 事件驱动的高性能Web服务器环境
- 找回WinSCP密码的神器:winscppasswd工具介绍
- xctools:解析Xcode命令行工具输出的Ruby库