MMX指令集在C++中的使用
2010-01-23 20:32:30 来源:WEB开发网核心提示:上次在《关于内联汇编的几个技巧》一文中只是简单地介绍了如何在C++中使用内联汇编,这一次先对上一次的文章作一补充,MMX指令集在C++中的使用,然后介绍如何使用MMX指令,一、内联汇编的一般原则:1、自由使用通用寄存器;(EAX,EBX,ECX和EDX)2、其它寄存器利用堆栈保留,使用,最后恢复;一般的像下面这样:__
上次在《关于内联汇编的几个技巧》一文中只是简单地介绍了如何在C++中使用内联汇编,这一次先对上一次的文章作一补充,然后介绍如何使用MMX指令。
一、内联汇编的一般原则:
1、自由使用通用寄存器;(EAX,EBX,ECX和EDX)
2、其它寄存器利用堆栈保留,使用,最后恢复;
一般的像下面这样:__asm{
push ebp
push esp
……….//使用EBP和ESP
pop esp
pop ebp
}
二、内联汇编__asm可以单独使用:
例如:__asm mov eax,anyval1
__asm mov ebx,anyval2
三、函数返回值可以直接放到eax中,可以不理会警告
例如:int anyfun(……/*anyparm*/)
{
int irtn; //函数返回值
…… //函数语句
__asm mov eax,irtn //代替return irtn;但编译器会发出警告,可以不理它
}
四、内联汇编不区分大小写,语法同普通汇编
例如:__asm{
注意:C++的变量还是区分大小写的
mov eax,ebx
MOV EAX,EBX //同上一句
}
[]
- ››使用脚本恢复WinXP系统的用户登录密码
- ››使用phpMyadmin创建数据库及独立数据库帐号
- ››使用Zend Framework框架中的Zend_Mail模块发送邮件...
- ››使用cout标准输出如何控制小数点后位数
- ››使用nofollow标签做SEO的技巧
- ››使用 WebSphere Message Broker 的 WebSphere Tra...
- ››使用SQL Server事件探查器做应用程序的性能分析
- ››使用SQL Server事件探查器分析死锁原因
- ››使用纯文本文件打造WCF服务
- ››使用 Dojo 开发定制 Business Space 小部件,第 4...
- ››使用 ADDRESS 与 INDIRECT函数查询信息
- ››使用 COLUMN函数编制单元信息
赞助商链接