在CC++代码中使用SSE等指令集的指令介绍

上传人:hs****ma 文档编号:473070530 上传时间:2023-05-12 格式:DOCX 页数:7 大小:33.70KB
返回 下载 相关 举报
在CC++代码中使用SSE等指令集的指令介绍_第1页
第1页 / 共7页
在CC++代码中使用SSE等指令集的指令介绍_第2页
第2页 / 共7页
在CC++代码中使用SSE等指令集的指令介绍_第3页
第3页 / 共7页
在CC++代码中使用SSE等指令集的指令介绍_第4页
第4页 / 共7页
在CC++代码中使用SSE等指令集的指令介绍_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《在CC++代码中使用SSE等指令集的指令介绍》由会员分享,可在线阅读,更多相关《在CC++代码中使用SSE等指令集的指令介绍(7页珍藏版)》请在金锄头文库上搜索。

1、123451234567在C/C+代码中使用SSE等指令集的指令(1)介绍转自http:/ fstpQWORDPTRespcall_cosaddesp,8fldQWORDPTR_real4024000000000000callCIcos显然,使用了Intrinsics之后的cos函数的指令少了很多,其调用的内部函数是_Clcos(http:/ 函数名:这类函数名一般以_m开头。函数名称和指令名称有一定的关系。2. 加法实例:下面使用SSE指令集进行加法运算,一条指令对四个浮点数进行运算:1.#include2.#include3.4.main(intargc,char*argv)5.6._m1

2、28a;7._m128b;8.9.a=_mm_set_ps(1,2,3,4);/10.b=_mm_set_ps(1,2,3,4);/11.12._m128c=_mm_add_ps(a,b);/13.14.printf(0:%lfn,c.m128_f320);15.printf(1:%lfn,c.m128_f321);16.printf(2:%lfn,c.m128_f322);17.printf(3:%lfn,c.m128_f323);18.19.return0;20.c=a+bAssignvaluetoaAssignvaluetoa从代码看,好像很复杂,但是生成的汇编的效率会比较高。一条指令就完成了四个浮点数的加法,其运行结果如下:(5)总结:1.1 ntrinsics函数:能提高性能,会增大生成代码的大小,是编译器的”内置函数“。2.1 ntrinsics对指令的封装函数:直接映射到汇编指令,能简化汇编代码的编写,另外,隐藏了寄存器分配和调度等。由于涉及到的数据类型、函数等内容较多,这里只是一个简单的介绍。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号