Dieser Artikel wurde maschinell übersetzt. Wenn Sie die englische Version des Artikels anzeigen möchten, aktivieren Sie das Kontrollkästchen Englisch. Sie können den englischen Text auch in einem Popupfenster anzeigen, indem Sie den Mauszeiger über den Text bewegen.
Übersetzung
Englisch
Informationen
Das angeforderte Thema wird unten angezeigt. Es ist jedoch nicht in dieser Bibliothek vorhanden.

_mm_hadd_pi32

[Diese Dokumentation ist nur eine Vorschau und wird in späteren Versionen ggf. geändert. Blank topics are included as placeholders.]

Microsoft-spezifisch

Gibt die zusätzliche Anweisung phadddder Streaming SIMD-Erweiterungen 3 (SSSE3) aus. Diese Anweisung fügt die Elemente zweier 64-Bit-Parametern hinzu.


          
__m64 _mm_hadd_pi32( 
   __m64 a,
   __m64 b
);
        

[in] a

Ein 64-Bit-Parameter, der zwei 32-Bit-Ganzzahlen mit Vorzeichen enthält.

[in] b

Ein 64-Bit-Parameter, der zwei 32-Bit-Ganzzahlen mit Vorzeichen enthält.

Ein 64-Bit-Wert, der zwei 64-Bit-Ganzzahlen mit Vorzeichen enthält. Jede ganze Zahl ist die Summe zwischen angrenzenden Paare von Elementen in den Eingabeparametern.

Das Ergebnis kann mit den folgenden Formeln ausgedrückt werden:

r0 := a0 + a1
r1 := b0 + b1

Intrinsisch

Architektur

_mm_hadd_pi32

x86, x64

Headerdatei <tmmintrin.h>

r0, a0und b0 sind die unteren 32 Bits des Rückgabewerts r und der Parameter a und b. r1, a1und b1 sind 32 Bits höherer Ordnung des Rückgabewerts r und der Parameter a und b.

Bevor Sie diese systeminterne Software verwenden, muss sichergestellt, dass der zugrunde liegende Prozessor die Anweisung unterstützt.

#include <stdio.h>
#include <tmmintrin.h>

int main ()
{
    __m64 a, b;

    a.m64_i32[0] = 65535;
    a.m64_i32[1] = -65536;
    b.m64_i32[0] = 5000;
    b.m64_i32[1] = 32000;

    __m64 res = _mm_hadd_pi32(a, b);

    printf_s("Original a:\t%6d\t%6d\nOriginal b:\t%6d\t%6d\n",
                a.m64_i32[0], a.m64_i32[1], b.m64_i32[0], b.m64_i32[1]);
    printf_s("Result res:\t%6d\t%6d\n",
                res.m64_i32[0], res.m64_i32[1]);

    _mm_empty();
    return 0;
}
          Vorlage A:      65535 -65536
Ursprünglich: b       5000 32000
RES Ergebnis:         -1 37000
        
Anzeigen: