Shifts an unsigned integer value (in zeroes) to the right by a specified number of bits, pushing the result onto the evaluation stack.
Assemblies: System.Reflection.Primitives (in System.Reflection.Primitives.dll)
mscorlib (in mscorlib.dll)
The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:
Shifts an integer to the right (shifting in zeroes).
The stack transitional behavior, in sequential order, is:
A value is pushed onto the stack.
The amount of bits to be shifted is pushed onto the stack.
The number of bits to be shifted and the value are popped from the stack; the value is shifted right by the specified number of bits.
The result is pushed onto the stack.
The shr.un instruction shifts the value (type int32, int64 or native int) right by the specified number of bits. The number of bits is a value of type int32, int64 or native int. The return value is unspecified if the number of bits to be shifted is greater than or equal to the width (in bits) of the supplied value.
Shr.un inserts a zero bit in the highest position on each shift.
The following Emit method overload can use the shr.un opcode: