/document/viewdoc/?id=418
以下部分引用上面網址的內容,供參考:
MMX指令集在C++中的使用
作者:孫原
2、 使用MMX指令集的註意事項
由於在CPU內部,FPU寄存器和MMX寄存器是同壹組寄存器,所以在同時引用上面寄存器時要註意正確的狀態轉換,具體做法以後在探討。妳只要先記住不能簡單的混合以上兩種指令集即可。
每次調用之前要先檢測cpu是否支持MMX指令集,以免發生異常。具體做法看下列示例:
mov EAX, 1 ; request for feature flags
CPUID ; 0Fh, 0A2h CPUID instruction
test EDX, 00800000h ; Is IA MMX technology bit (Bit 23 of EDX)
; in feature flags set?
jnz MMX_Technology_Found
這段代碼來自Intel的參考手冊,所以妳可以放心的使用。
3、 下面用壹段示例代碼來說明壹下怎樣用MMX指令 __int8 i8_a[2][16]; //字節操作數,兩組,每組16個
__int16 i16_a[8]; //字操作數
__int32 i32_a[4];