⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 block_mmx.asm

📁 由bmp生成mpeg2 的I_frame 数据
💻 ASM
📖 第 1 页 / 共 2 页
字号:
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 84
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 112
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 140
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 168
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 196
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 224
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		lea        edi, [edi+56];
		movq       mm0, [esi];
		movq       mm1, [esi+8];
		movq       mm2, [esi+16];
		movq       mm3, [esi+24];
		movq       mm4, [esi+32];
		movq       mm5, [esi+40];
		movq       mm6, [esi+48];
		lea        esi, [esi+56]; 252
		pmullw     mm0, mm7;
		pmullw     mm1, mm7;
		pmullw     mm2, mm7;
		pmullw     mm3, mm7;
		pmullw     mm4, mm7;
		pmullw     mm5, mm7;
		pmullw     mm6, mm7;
		movq       [edi], mm0;
		movq       [edi+8], mm1;
		movq       [edi+16], mm2;
		movq       [edi+24], mm3;
		movq       [edi+32], mm4;
		movq       [edi+40], mm5;
		movq       [edi+48], mm6;
		movq       mm0, [esi];
		pmullw     mm0, mm7;
		movq       [edi+56], mm0;
;-------------------------------------------------------------------
; 儗僕僗僞暅尦摍屻巒枛

		pop        esi
		pop        edi

		ret        12

_setup_qw_mmx@12 ENDP
;-------------------------------------------------------------------
; 廔椆


;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; setup_qw_sse2 - 検巕壔峴楍偲検巕壔學悢偐傜廳傒僥乕僽儖傪嶌惉偡傞
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; 僀儞僞乕僼僃乕僗
PUBLIC              C _setup_qw_sse2@12
;      void __stdcall  setup_qw_sse2(
; [esp + 4] = unsigned short           *qw,
; [esp + 8] = unsigned short           *qm,
; [esp +12] = int                       q
; )
_setup_qw_sse2@12     PROC
;-------------------------------------------------------------------
; 巊梡偡傞儗僕僗僞
; edi - 弌椡
; esi - 擖椡
; total 8 bytes
;-------------------------------------------------------------------
; 儗僕僗僞偺戅旔
		push       edi
		push       esi
;-------------------------------------------------------------------
; 堷悢偐傜僨乕僞傪庴偗庢偭偰偍偔
		mov        edi, [esp+ 8+ 4]
		mov        esi, [esp+ 8+ 8]
;-------------------------------------------------------------------
; 曄姺學悢偺嶌惉
		movd       xmm7, [esp+ 8+12]
		punpcklwd  xmm7, xmm7;
		pshufd     xmm7, xmm7, 00000000b;
		movdqa     xmm0, [esi];
		movdqa     xmm1, [esi+16];
		movdqa     xmm2, [esi+32];
		movdqa     xmm3, [esi+48];
		movdqa     xmm4, [esi+64];
		movdqa     xmm5, [esi+80];
		movdqa     xmm6, [esi+96];
		lea        esi, [esi+112]; 56
		pmullw     xmm0, xmm7;
		pmullw     xmm1, xmm7;
		pmullw     xmm2, xmm7;
		pmullw     xmm3, xmm7;
		pmullw     xmm4, xmm7;
		pmullw     xmm5, xmm7;
		pmullw     xmm6, xmm7;
		movdqa     [edi], xmm0;
		movdqa     [edi+16], mm1;
		movdqa     [edi+32], mm2;
		movdqa     [edi+48], mm3;
		movdqa     [edi+64], mm4;
		movdqa     [edi+80], mm5;
		movdqa     [edi+96], mm6;
		lea        edi, [edi+112];
		movdqa     xmm0, [esi];
		movdqa     xmm1, [esi+16];
		movdqa     xmm2, [esi+32];
		movdqa     xmm3, [esi+48];
		movdqa     xmm4, [esi+64];
		movdqa     xmm5, [esi+80];
		movdqa     xmm6, [esi+96];
		lea        esi, [esi+112]; 112
		pmullw     xmm0, xmm7;
		pmullw     xmm1, xmm7;
		pmullw     xmm2, xmm7;
		pmullw     xmm3, xmm7;
		pmullw     xmm4, xmm7;
		pmullw     xmm5, xmm7;
		pmullw     xmm6, xmm7;
		movdqa     [edi], xmm0;
		movdqa     [edi+16], mm1;
		movdqa     [edi+32], mm2;
		movdqa     [edi+48], mm3;
		movdqa     [edi+64], mm4;
		movdqa     [edi+80], mm5;
		movdqa     [edi+96], mm6;
		lea        edi, [edi+112];
		movdqa     xmm0, [esi];
		movdqa     xmm1, [esi+16];
		movdqa     xmm2, [esi+32];
		movdqa     xmm3, [esi+48];
		movdqa     xmm4, [esi+64];
		movdqa     xmm5, [esi+80];
		movdqa     xmm6, [esi+96];
		lea        esi, [esi+112]; 168
		pmullw     xmm0, xmm7;
		pmullw     xmm1, xmm7;
		pmullw     xmm2, xmm7;
		pmullw     xmm3, xmm7;
		pmullw     xmm4, xmm7;
		pmullw     xmm5, xmm7;
		pmullw     xmm6, xmm7;
		movdqa     [edi], xmm0;
		movdqa     [edi+16], mm1;
		movdqa     [edi+32], mm2;
		movdqa     [edi+48], mm3;
		movdqa     [edi+64], mm4;
		movdqa     [edi+80], mm5;
		movdqa     [edi+96], mm6;
		lea        edi, [edi+112];
		movdqa     xmm0, [esi];
		movdqa     xmm1, [esi+16];
		movdqa     xmm2, [esi+32];
		movdqa     xmm3, [esi+48];
		movdqa     xmm4, [esi+64];
		movdqa     xmm5, [esi+80];
		movdqa     xmm6, [esi+96];
		pmullw     xmm0, xmm7;
		pmullw     xmm1, xmm7;
		pmullw     xmm2, xmm7;
		pmullw     xmm3, xmm7;
		pmullw     xmm4, xmm7;
		pmullw     xmm5, xmm7;
		pmullw     xmm6, xmm7;
		movdqa     [edi], xmm0;
		movdqa     [edi+16], mm1;
		movdqa     [edi+32], mm2;
		movdqa     [edi+48], mm3;
		movdqa     [edi+64], mm4;
		movdqa     [edi+80], mm5;
		movdqa     [edi+96], mm6;
		movdqa     xmm0, [esi+112];
		movdqa     xmm1, [esi+128];
		movdqa     xmm2, [esi+144];
		movdqa     xmm3, [esi+160];
		pmullw     xmm0, xmm7;
		pmullw     xmm1, xmm7;
		pmullw     xmm2, xmm7;
		pmullw     xmm3, xmm7;
		movdqa     [edi+112], xmm0;
		movdqa     [edi+128], xmm1;
		movdqa     [edi+144], xmm2;
		movdqa     [edi+160], xmm3;
;-------------------------------------------------------------------
; 儗僕僗僞暅尦摍屻巒枛

		pop        esi
		pop        edi

		ret        12

_setup_qw_sse2@12 ENDP
;-------------------------------------------------------------------
; 廔椆


END

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -