firstbit (sm5 - asm)
Trova il primo set di bit in un numero, da LSB o MSB.
firstbit{_hi|_lo|_shi} dest[.mask], src0[.swizzle] |
---|
Elemento | Descrizione |
---|---|
Dest |
[in] Posizione integer del primo set di bit in src0 a partire da LSB per firstbit_lo o MSB per firstbit_hi. |
src0 |
[in] Intero di input. |
Commenti
Questa operazione restituisce la posizione integer del primo set di bit nell'input a 32 bit a partire da LSB per firstbit_lo o MSB per firstbit_hi. Ad esempio, firstbit_lo in 0x00000001 restituisce 0. firstbit_hi in 0x10000000 restituisce 3.
firstbit_shi (s per segno) restituisce il primo 0 dal MSB se il numero è negativo; in caso contrario, restituisce il primo 1 dal MSB.
Tutte le varianti dell'istruzione restituiscono ~0 (0xffffffff nel registro a 32 bit) se non viene trovata alcuna corrispondenza.
Usare questa istruzione per enumerare rapidamente i bit in un campo bit o trovare la potenza più grande di 2 in un numero.
Questa istruzione si applica alle fasi dello shader seguenti:
Vertice | Scafo | Dominio | Geometria | Pixel | Calcolo |
---|---|---|---|---|---|
X | X | X | X | X | X |
Modello Shader mimimum
Questa istruzione è supportata nei modelli shader seguenti:
Modello di shader | Supportato |
---|---|
Modello shader 5 | sì |
Modello shader 4.1 | no |
Modello shader 4 | no |
Modello shader 3 (DirectX HLSL) | no |
Modello shader 2 (DirectX HLSL) | no |
Modello shader 1 (DirectX HLSL) | no |