imm _ atomic _ und (sm5 - asm)

Sofortiges atomares bitweises AND in den Arbeitsspeicher. Gibt den Wert im Arbeitsspeicher vor and zurück.

imm _ atomic _ und dst0 [ .single component mask , _ _ ] dst1, dstAddress [ .swizzle ] , src0 [ .select _ component]
Element Beschreibung
dst0
[in ] Enthält den Wert von dst1 vor and.
dst1
[in ] Einer ungeordneten Zugriffsansicht (UAV) (u # ). Im Compute-Shader kann dies auch freigegebener Threadgruppenspeicher sein (g # ).
dstAddress
[im ] Zielspeicher.
src0
Der Wert für AND mit dst.

Hinweise

Diese Anweisung führt einen 32-Bit-Einzelkomponenten-AND des Operanden src0 mit dst1 bei einer 32-Bit-Adresse pro Komponente dstAddress aus.

Wenn dst1 ein u ist, wurde es möglicherweise als # roh, typisch oder strukturiert deklariert. Bei Typ muss es als UINT/SINT deklariert werden, und das gebundene Ressourcenformat ist R32 _ _ UINT/SINT.

Wenn dst1 g # ist, muss es als roh oder strukturiert deklariert werden.

Der Wert im dst1-Arbeitsspeicher, bevor AND an dst0 zurückgegeben wird.

Der gesamte Vorgang wird atomisch ausgeführt.

Die Anzahl von Komponenten, die von der Adresse übernommen werden, wird durch die Dimensionalität der Ressource bestimmt, die unter dst1 deklariert wurde.

Wenn der Shaderaufruf inaktiv ist, z. B. wenn das Pixel zuvor in seiner Ausführung verworfen wurde oder ein Pixel-/Beispielaufruf nur als Hilfs für ein echtes Pixel/Beispiel für Ableitungen vorhanden ist, ändert diese Anweisung den dst1-Speicher überhaupt nicht, und der zurückgegebene Wert ist nicht definiert.

Die Adressierung außerhalb der Grenzen für u bewirkt, dass nichts in den Arbeitsspeicher geschrieben wird, außer wenn u strukturiert ist und der Byteoffset in die Struktur (zweite Komponente der Adresse) den Zugriff außerhalb der Grenzen verursacht, dann wird der gesamte Inhalt der # # UAV nicht definiert.

Eine Nicht-Begrenzungs-Adressierung für u oder g bewirkt, dass ein nicht definiertes Ergebnis an den # # Shader in dst0 zurückgegeben wird.

Diese Anweisung gilt für die folgenden Shaderstufen:

Scheitelpunkt Rumpf Domain Geometrie Pixel Compute
X X

Da UAVs in allen Shaderstufen für Direct3D 11.1 verfügbar sind, gilt diese Anweisung für alle Shaderstufen für die Direct3D 11.1-Runtime, die ab Windows 8.

Scheitelpunkt Rumpf Domain Geometrie Pixel Compute
X X X X X X

Minimales Shadermodell

Diese Anweisung wird in den folgenden Shadermodellen unterstützt:

Shadermodell Unterstützt
Shadermodell 5 ja
Shadermodell 4.1 nein
Shadermodell 4 nein
Shadermodell 3 (DirectX HLSL) nein
Shadermodell 2 (DirectX HLSL) nein
Shadermodell 1 (DirectX HLSL) nein

Shader Model 5-Assembly (DirectX HLSL)