# _bextr_u32/64

Extracts contiguous bits from the first source operand to the destination using an index value and length value specified in the second source operand. The corresponding Intel® AVX2 instruction is BEXTR.

## Syntax

extern unsigned int _bextr_u32(unsigned int source, unsigned int sb, unsigned int bl);

extern unsigned __int64 _bextr_u64(unsigned __int64 s1, unsigned int sb, unsigned int bl);

## Arguments

source | the source from where the bits are extracted
sb | start bit, the number of the bit from where the contiguous bits are extracted
bl | bit length, the number of bits to be extracted

## Description

Extracts contiguous bits from the first source operand to the destination using an index value and length value specified in the second source operand. The extracted bits are written to the destination starting from the least significant bit. All higher order bits in the destination starting at bit position bl are zeroed. The destination is cleared if no bits are extracted.

## Returns

Result of the operation.

Parent topic: Intrinsics for Operations to Manipulate Integer Data at Bit-Granularity