80x87数学协处理器:原理、指令与应用详解
在计算机的发展历程中,数学协处理器的出现极大地提升了计算机的数学运算能力。本文将深入探讨80x87数学协处理器,包括其数据类型、指令集以及实际应用案例。
1. 数学协处理器的重要性
使用通用微处理器(如8088/86)执行数学函数(如对数、正弦等)非常耗时,不仅对CPU是个挑战,也给编写此类程序的程序员带来了很大的负担。在没有数学协处理器的情况下,程序员必须使用8088/86指令编写数学函数的子程序。尽管有些子程序已经编写好并可以以较低的成本购买,但无论子程序多么优秀,其在CPU(8088/86、286、386)上的运行时间仍然相当长。
下面的表格对比了8087和8086执行一些数学函数所需的时钟数:
| 指令 | 8087近似执行时间(µs)(5 - MHz时钟) | 8086仿真近似执行时间(µs)(5 - MHz时钟) |
| — | — | — |
| 单精度乘法 | 9 | 1600 |
| 双精度乘法 | 27 | 2100 |
| 加法 | 17 | - |
| 单精度除法 | 39 | - |
| 比较 | 9 | 9 |
| 单精度加载 | - | - |
| 单精度存储 | - | - |
| 平方根 | 18 | 36 |
| 正切 | 90 | 100 |
| 指数运算 | - | 19600 |
通过比较一些程序(如SPICE,一个广泛使用浮点运算的电路分析软件包)在有协处理器和没有协处理器的计算机上的运行时间,可以明显看出协处理器的优势。在某些情况下,运行时间的差异可达
超级会员免费看
订阅专栏 解锁全文
1699

被折叠的 条评论
为什么被折叠?



