imm_atomic_and (sm5 - asm)

E Y bit a bit inmediatos atómicos a la memoria. Devuelve el valor en memoria antes de AND.

imm_atomic_and dst0[.single_component_mask], dst1, dstAddress[.swizzle], src0[.select_component]
Elemento Descripción
dst0
[in] Contiene el valor de dst1 antes de AND.
dst1
[in] Una vista de acceso desordenada (UAV) (u#). En el sombreador de proceso, también puede ser memoria compartida del grupo de subprocesos (g#).
dstAddress
[in] Memoria de destino.
src0
Valor de AND con dst.

Observaciones

Esta instrucción realiza un único componente de 32 bits AND de operando src0 con dst1 a 32 bits por dirección de componente dstAddress.

Si dst1 es u#, es posible que se haya declarado como sin formato, con tipo o estructurado. Si se escribe, se debe declarar como UINT/SINT con el formato de recurso enlazado que se R32_UINT/_SINT.

Si dst1 es g#, debe declararse como sin formato o estructurado.

Valor de la memoria dst1 antes de que se devuelva and a dst0.

Toda la operación se realiza de forma atómica.

El número de componentes tomados de la dirección viene determinado por la dimensionalidad del recurso declarado en dst1.

Si la invocación del sombreador está inactiva, por ejemplo, si el píxel se ha descartado anteriormente en su ejecución, o solo existe una invocación de píxeles o muestras para servir como asistente para un píxel o muestra real para derivados, esta instrucción no modifica la memoria dst1 en absoluto y el valor devuelto no está definido.

El direccionamiento fuera de los límites en u# hace que no se escriba nada en la memoria, excepto si el u# está estructurado y el desplazamiento de bytes en la estructura (segundo componente de la dirección) está causando el acceso fuera de los límites, entonces todo el contenido de la UAV se vuelve indefinido.

El direccionamiento fuera de los límites en u# o g# hace que se devuelva un resultado indefinido al sombreador en dst0.

Esta instrucción se aplica a las siguientes fases del sombreador:

Vértice Casco Domain Geometría Píxel Proceso
X X

Dado que las UAV están disponibles en todas las fases del sombreador para Direct3D 11.1, esta instrucción se aplica a todas las fases del sombreador para el entorno de ejecución de Direct3D 11.1, que está disponible a partir de Windows 8.

Vértice Casco Domain Geometría Píxel Proceso
x X X x x x

Modelo de sombreador mínimo

Esta instrucción se admite en los siguientes modelos de sombreador:

Modelo de sombreador Compatible
Modelo de sombreador 5
Modelo de sombreador 4.1 No
Modelo de sombreador 4 No
Modelo de sombreador 3 (DirectX HLSL) No
Modelo de sombreador 2 (DirectX HLSL) No
Modelo de sombreador 1 (DirectX HLSL) No

Ensamblado del modelo de sombreador 5 (DirectX HLSL)