mmx

    0熱度

    1回答

    使用C++ Builder中6,並試圖運行此代碼 __int64 m64_1 = 1424115525456; __int64 m64_2 = 2222222222222; __int64 m64_3 = 1111111111111; __asm movq mm1, m64_1 __asm paddd mm1, m64_2 __asm movq

    2熱度

    3回答

    我有一些C++函數與一些SSE2指令。問題是編譯使用Microsoft Visual C++此代碼時我得到下面的鏈接器錯誤:在函數引用 解析外部符號_m_empty「無效* __cdecl 處理(無效*)」 當我評論_m_empty,我會得到一個運行時錯誤! 但它應該用於MMX指令,不應該嗎? #include "mex.h" #include <pthread.h> #include <em

    1熱度

    1回答

    我知道轉換MMX 32位mmx內在函數不再允許__m64。所以我很難將這段代碼升級到SSE。我被告知另一個堆棧溢出帖子發佈我的代碼。也許這個練習也會幫助其他人。 我評論說'_mm_empty'認爲這是正確的做法。我在emmintrin.h中找到了所有其他__m128i操作的函數,但仍有一些錯誤。 原來的32位功能代碼: DWORD CSumInsideHorizontalTask::Interna

    10熱度

    1回答

    我寫了這個代碼在NASM: PADDD mm0, mm1 ,這是組裝沒有錯誤,但該指令,但它在NASM存在,我無法在英特爾的說明手冊發現,所有我發現是這樣的: PADDD xmm1, xmm2/m128 這需要一個xmm寄存器,而不是mm寄存器。 這是PADDD mm0, mm1操作碼:0FFEC1 這是PADDD xmm0, xmm1操作碼:660FFEC1 那麼,爲什麼PADDD mm

    3熱度

    1回答

    section .data qVar1: dq 1 section .bss var28: resb 28 section .text _main: ; Use an MMX instruction movq mm0, [qVar1] ; Move quadword from r/m64 to mm. ; Rea

    0熱度

    1回答

    假設我們有兩個包含以下十六進制值 值的寄存器:AB0890C2,4598EE50。什麼是使用MMX指令 加入他們的結果: a. for packed byte b. for packed word 假設不使用飽和算術? 從我的理解,如果你正常添加兩個十六進制值,你會得到F0A17F12,但我怎麼會將這個使用MMX指令打包字節和字?

    3熱度

    1回答

    由於我們在X32之下從Debian維護人員那裏收到了一些錯誤報告,因此我正在使用內聯彙編來處理某些軟件的端口。在X86和X64下的代碼都很好。 我們在emms指令捕捉總線錯誤: ... 0x005520fd <+3885>: pop %rsp 0x005520fe <+3886>: emms => 0x00552100 <+3888>: pop %rbx 0x005

    0熱度

    1回答

    我正在做我的學校項目:Visual Studio中的動態MASM彙編程序庫,它實現了CaesarCipher的方法。一切正常,當我使用控制檯應用程序。當我創建Windows Forms UI時,MMX函數開始導致錯誤。 MMX功能 - 我的項目的問題。我沒有在我的項目中看到它的用法,但我必須做的一件事是使用MMX代碼,即使它沒用。 在控制檯,工作得很好: movq mm1, mm0 在窗體

    1熱度

    1回答

    正在轉換,然後按位或將唯一的方法從兩個__m128d轉換爲單個__m128i? 這是完全可以接受的在在x64,Xcode的建立 m128d v2dHi = .... m128d v2dLo = .... __m128i v4i = _mm_set_epi64(_mm_cvtpd_pi32(v2dHi), _mm_cvtpd_pi32(v2dLo)) 和拆卸顯示所使用_mm_cvtpd_pi

    0熱度

    1回答

    我試圖褪色兩個圖像,結果不是預期的(早期使用C代碼)。 這裏是MMX代碼: void fadeMMX(ImagenBMP *imagen1, ImagenBMP *imagen2, int f) { double *puntero1; double *puntero2; int valor = (int)f*255; for (int i=0; i <imagen1->tamanyo; i