ITEEDU

5、其它数学运算指令

在协处理器中,除了完成具体的数学运算指令外,还设置了若干个与数学运算有关的运算指令。具体的运算指令及其功能描述如表11.4所列。

表11.4 与数学运算有关的其它指令

指令格式

指令的功能

FSQRT

求栈顶数据的平方根。如果对负数求其平方根,则会发生错误,并可通过检测状态寄存器的标志位IE来确定。

FSCALE

将ST(1)中的数(转换成整数)加上ST的阶码,该指令能快速完成乘/除2n的运算。ST(1)中的数必须在2-15到215之间。

FPREM/FPREM1

ST=ST%ST(1),80387及其以后的协处理器支持FPREM1。

FRNDINT

对栈顶数据进行舍入运算,使之转换成整数。

FXTRACT

将栈顶数据分成二部分:无偏阶码和尾数。尾数存入栈顶,无偏阶码存入ST(1)。它常用将浮点数转换成小数形式打印输出。

FABS

ST=|ST|,即:求栈顶数据的绝对值。

FCHS

ST=-ST,即:改变栈顶数据的符号。