知识点:
 浮点指令 fsub 一、浮点指令fsub
格式
fsub memvar // st0=st0-memvar
知识点:
 浮点指令 fmul 一、浮点指令fmul
格式
fmul memvar // st0=st0*memvar int _tmain(int argc, _TCHAR* argv[])
{
double f1,f2;//float;
f1=3.333f;
f2=6.366f;
f1=f1*f2; //00401003 |. 83EC 10 SUB ESP,10 ; double f1,f2;
//00401006 |. DD05 F0204000 FLD QWORD PTR DS:[4020F0]
//0040100C |. DD5D F0 FSTP QWORD PTR SS:[EBP-10] ; f1=[4020f0]=3.333;
//0040100F |. DD05 E8204000 FLD QWORD PTR DS:[4020E8]
//00401015 |. DD5D F8 FSTP QWORD PTR SS:[EBP-8] ; f2=[4020e8]=6.366
//00401018 DD45 F0 FLD QWORD PTR SS:[EBP-10]
//0040101B DC4D F8 FMUL QWORD PTR SS:[EBP-8] ; st0=st0*f2=6.366*3.33
//0040101E DD5D F0 FSTP QWORD PTR SS:[EBP-10] ; f1=21.21788
return 0;
}
知识点:
 038-浮点指令FDIV(除)
一、浮点指令FDIV 格式
FDIVmemvar // st0=st0 / memvar int _tmain(int argc, _TCHAR* argv[])
{
float f1,f2;
f1=3.33;
f2=2.00;
f1=f1/f2; //00401003 |. 83EC 08 SUB ESP,8 ; float f1,f2;
//00401006 |. D905 E8204000 FLD DWORD PTR DS:[4020E8]
//0040100C |. D95D F8 FSTP DWORD PTR SS:[EBP-8] ; f1=3.33
//0040100F |. D905 E4204000 FLD DWORD PTR DS:[4020E4]
//00401015 |. D95D FC FSTP DWORD PTR SS:[EBP-4] ; f2=2.00
//00401018 |. D945 F8 FLD DWORD PTR SS:[EBP-8]
//0040101B |. D875 FC FDIV DWORD PTR SS:[EBP-4] ; st0=st0/f2
//0040101E |. D95D F8 FSTP DWORD PTR SS:[EBP-8] ; f1=1.665 return 0;
}
知识点:
 038-浮点指令FILD
一、浮点指令FILD格式
整数入栈指令 //fld
FILD memvar // st0=(double)memvar 与之相似的指令有FIST 把st0的数转换成整数放置到变量中
浮点指令CVTTPS2PI

一、浮点指令CVTTPS2PI
把mem这个浮点数截断取整 后放到通用寄存器里边
CVTTPS2PI mm0,mem// mm0 CVTTPS2PI MM0,DQWORD PTR SS:[ebp] //[eax]
CVTTPS2PI MM0,DQWORD PTR SS:[ESP]

汇编 fsub ,fmul,fdiv,fild,CVTTPS2PI 指令的更多相关文章

  1. 王爽汇编第十章,call和ret指令

    目录 王爽汇编第十章,call和ret指令 call和ret指令概述: ret和retf ret指令 retf指令 call 和 ret 的配合使用 call指令详解 call原理 call指令所有写 ...

  2. 汇编 STOSB, STOSW, STOSD指令

    知识点: 汇编指令 STOSB STOSW STOSD 一.汇编指令STOSB 004113AC 8DBD B4FEFFFF LEA EDI,DWORD PTR SS:[EBP-14C] 004113 ...

  3. ARM汇编中ldr伪指令和ldr指令(转载)

    转自:http://blog.csdn.net/ce123_zhouwei/article/details/7182756 ARM是RISC结构,数据从内存到CPU之间的移动只能通过L/S指令来完成, ...

  4. 《Intel汇编第5版》 Mov指令

    一.Mov用于数据传送,用法如下: 二.当传送的数据和目标数据位宽不一致的时候,需要使用MOVZX.MOVSX扩展.MOVZX使用0填充高位,MOVSX使用源操作数最高位填充 下面是汇编代码演示: I ...

  5. 汇编 OD 标志位 置位相关指令

    知识点: l 标志位 置位相关指令   l 标志寄存器PSW 标志寄存器PSW(程序状态字寄存器PSW)    标志寄存器PSW是一个16为的寄存器.它反映了CPU运算的状态特征并且存放某些控制标志. ...

  6. 汇编 SETG,SETL ,SETGE, SETLE指令

    一.SETG SETZ(SETE) //取ZF标志位值 放到寄存器里 SETNZ(SETNE) == > SETG //setg cl//ZF==0 并 SF==0 并 OF==0 时 cl=1 ...

  7. 汇编:jmp系列跳转指令总结

    助记方法: J:跳转C: 进位位置位N: 否S: 符号位置位o: 溢出位置位Z: 零标志位置位E: 等于P:奇偶位置位A: AboveB: BelowL: Less (Little的比较级)G: Gr ...

  8. 汇编,浮点运算符,fldpi,fmul等指令说明.

    协处理器指令系统 协处理器共有68条不同的指令,汇编程序在遇到协处理器指令助记符时,都会将其转换成机器语言的ESC指令,ESC指令代表了协处理器的操作码. 协处理器指令在执行过程中,需要访问内存单元时 ...

  9. 16汇编第十讲完结Call变为函数以及指令的最后讲解

    16汇编完结Call变为函数以及指令的最后讲解 学了10天的16位汇编,这一讲就结束了,这里总结一下昨天的LOOP指令的缺陷,因为lOOP指令的缺陷,所以我们都改为下面的汇编代码使用了,自己去写,其中 ...

随机推荐

  1. LeetCode题解之Swap Nodes in Pairs

    1.题目描述 2.问题分析 对两个节点进行交换操作 3.代码 ListNode* swapPairs(ListNode* head) { if( !head || head->next == N ...

  2. Oracle EBS OM 发放订单

    DECLARE l_header_rec OE_ORDER_PUB.Header_Rec_Type; l_line_tbl OE_ORDER_PUB.Line_Tbl_Type; l_action_r ...

  3. pt-heartbeat --update --daemonize 只执行一次秒退的问题

    使用pt-heartbeat帮助测试MySQL从库delay时长- 第一次运行测试成功,运行顺畅. 过几天再次用--update测试时,发现pt-heartbeat只update一次就自己退出了,-- ...

  4. ndk的注意事项

    从开源网站下载的源码,需要自己编译c源码成so类库.当时用Android studio 运行总是报错"finished with non-zero exit value 2"报错定 ...

  5. Unity Mono

    Unity的mscrolib.dll和.Net的mscrolib.dll 好奇于Unity的mscrolib.dll和.Net Framework提供的mscrolib是否一致. .Net的mscro ...

  6. SDN期末作业验收

    作业链接:https://edu.cnblogs.com/campus/fzu/SoftwareDefinedNetworking2017/homework/1585 负载均衡程序 1.github链 ...

  7. Mysql表类型(存储引擎)的比较

    面试官问:你知道mysql有哪些存储引擎,区别是啥? 我:一脸闷逼,于是乎下来补一补,以作备查 1.和大多数数据库不同,MySQL 中有一个存储引擎的概念,针对不同的存储需求可以选择最优的存储引擎. ...

  8. Tomcat设置虚拟目录的方法, 不修改server.xm

    所在小组使用的就是这样的形式开发,这样切换开发环境,测试环境,正式环境就只需要修改project.xml文件就行了.project.xml命名是随意的,访问的时候就使用这个名字来访问. 在tomcat ...

  9. python requests 简单实现易班登录,自动点赞,评论,发表

    小编能力有限,本文纯属瞎编,如有雷同,你去打辅导员涩 一.前戏 有个操蛋,操蛋,操蛋的辅导员促使小编成长,原因:易班需要活跃度,辅导员安排班上每个人必须去易班上 写文章,写评论,发投票...  我觉得 ...

  10. std::max、std::min error C2589: “(”:“::”右边的非法标记,error C2059: 语法错误:“::”

    在VC++种同时包含头文件#include <windows.h>和#include <algorithm>后就会出现无法正常使用std标准库中的min和max模板函数,经过查 ...