汇编浮点命令简记

1、FLD

指令格式:

FLD STReg/MemReal

指令功能:

将浮点数据压入协处理器的堆栈中。当进行内存单元内容压栈时,系统会自动决定传送数据的精度。比如:用DD或REAL4定义的内存单元数值是单精度数等

fld dword ptr ds:[eax+0xC]   意思是将[eax+c]的值以浮点型放进ST0里面

2、FST

指令格式:

指令功能:

FST  STReg/MemReal

将协处理器堆栈栈顶的数据传送到目标操作数中。在进行数据传送时,系统自动根据控制寄存器中舍入控制位的设置把栈顶浮点数舍入成相应精度的数据。

3、FSTP

指令格式:

FSTP  STReg/MemReal

指令功能:

与FST相类似,所不同的是:指令FST执行完后,不进行堆栈的弹出操作,即:堆栈不发生变化,而指令FSTP执行完后,则需要进行堆栈的弹出操作,堆栈将发生变化

fstp dword ptr ss:[ebp-0x20] 意思是将ST0里面的浮点值,放到ebp-20这个内存里面,同是清空ST0里面的值

4:

fsub

   格式

   fsub memvar // st0=st0-memvar

5:

fmul

   格式

   fmul  memvar // st0=st0*memvar

6:

FDIV   格式

   FDIVmemvar // st0=st0 / memvar

7:

FILD

  整数入栈指令 //fld

  FILD memvar // st0=(double)memvar

与之相似的指令有FIST 把st0的数转换成整数放置到变量中

8:

CVTTPS2PI

     把mem这个浮点数截断取整 后放到通用寄存器里边

    CVTTPS2PI mm0,mem// mm0

  

  CVTTPS2PI MM0,DQWORD PTR SS:[ebp]  //[eax]

  CVTTPS2PI MM0,DQWORD PTR SS:[ESP]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值