汇编语言浮点数算术运算指令

  • 内容
  • 评论
  • 相关

下表列出了基本算术运算操作。所有算术运算指令支持的内存操作数类型与 FLD (加载)和 FST(保存)一致,因此,操作数可以是间接操作数、变址操作数和基址-变址操作数等等。

FCHS 修改符号
FADD 源操作数与目的操作数相加
FSUB 从目的操作数中减去源操作数
FSUBR 从源操作数中减去目的操作数
FMUL 源操作数与目的操作数相乘
FDIV 目的操作数除以源操作数
FDIVR 源操作数除以目的操作数

FCHS 和 FABS

FCHS( 修改符号 ) 指令将 ST(0) 中浮点数值的符号取反。FABS ( 绝对值 ) 指令清除 ST(0) 中数值的符号,以得到它的绝对值。这两条指令都没有操作数:

FCHS
FABS

FADD、FADDP、FIADD

FADD(加法)指令格式如下,其中,m32fp 是 REAL4 内存操作数,m64fp 即是 REAL8 内存操作数,i 是寄存器编号:

FADD
FADD m32fp
FADD m64fp
FADD ST(0), ST(i)
FADD ST(i) , ST(0)

无操作数

如果 FADD 没有操作数,则 ST(0)与 ST(1)相加,结果暂存在 ST(l)。然后 ST(0) 弹出堆栈,把加法结果保留在栈顶。假设堆栈已经包含了两个数值,下图展示了 FADD 的操作:

本文标题:汇编语言浮点数算术运算指令

本文地址:https://www.hosteonscn.com/5589.html

评论

0条评论

发表评论

邮箱地址不会被公开。 必填项已用*标注