OpCodes.Conv_Ovf_U2 Поле
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Преобразует подписанное значение поверх стека unsigned int16 оценки и расширяет его до int32, вызывая OverflowException переполнение.
public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_U2;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_U2;
staticval mutable Conv_Ovf_U2 : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_U2 As OpCode
Значение поля
Комментарии
В следующей таблице перечислены шестнадцатеричные и шестнадцатеричные и Microsoft формат сборки промежуточного языка (MSIL) инструкции, а также краткая сводка по ссылке:
| Формат | Формат сборки | Description |
|---|---|---|
| B6 | conv.ovf.u2 | Преобразуйте в unsigned int16 (в стеке как int32) и создайте исключение при переполнении. |
Переходное поведение стека в последовательном порядке:
valueотправляется в стек.valueизвлекается из стека и выполняется попытка операции преобразования. При возникновении переполнения создается исключение.Если преобразование выполнено успешно, результирующее значение передается в стек.
Код conv.ovf.u2 opcode преобразует на вершине стека тип, указанный в опкоде, и помещает value преобразованное значение в верхней части стека. Если значение слишком велико или слишком мало для представления целевым типом, создается исключение.
Преобразования из чисел с плавающей запятой в целые значения усечены числом к нулю. Обратите внимание, что целые значения менее 4 байт расширяются до int32 тех случаев, когда они загружаются в стек вычислений (если conv.ovf.i они не используются или conv.ovf.u не используются, в этом случае результат также native int).
OverflowException вызывается, если результат не может быть представлен в типе результата.
Следующая Emit перегрузка метода может использовать conv.ovf.u2 код opcode: