09.05.2013 Views

Tema 5: El Pentium a Fondo - DAC

Tema 5: El Pentium a Fondo - DAC

Tema 5: El Pentium a Fondo - DAC

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

MMX: Funciones Aritméticas<br />

MICROPROCESADORES<br />

• __m64 _mm_adds_pi8 (__m64 m1, __m64 m2): Suma por separado los 8 bytes<br />

de un registro MMX con los 8 bytes de otro registro MMX.<br />

• __m64 _mm_sub_pi32 (__m64 m1, __m64 m2): Resta la parte alta del registro<br />

m1 de la parte alta del registro m2, y la parte baja del registro m1 de la parte baja<br />

del registro m2.<br />

• __m64 _mm_madd_pi16 (__m64 m1, __m64 m2): Multiplica las 4 palabras de 16<br />

bits del registro m1 por las 4 palabras del registro m2. Esto produce 4 valores<br />

intermedios de 32 bits. Estos 4 valores se suman dos a dos, para producir 2<br />

valores de 32 bits.<br />

• __m64 _mm_mulhi_pi16 (__m64 m1, __m64 m2): Multiplica las 4 palabras de<br />

m1 por las de m2, y devuelve la parte alta de cada resultado. Para la parte baja<br />

está la función _mm_mullo_pi16.<br />

• __m64 _mm_add_pu8 (__m64 m1, __m64 p2): Considera que todos los valores<br />

son enteros sin signo (unsigned). Resultado no saturado.<br />

*p_mmx = _mm_adds_pi8 (*m1, *m2);<br />

ESCUELA TÉCNICA SUPERIOR DE INGENIERÍA<br />

INFORMÁTICA<br />

16

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!