Поделиться через


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 

Значение поля

Комментарии

В следующей таблице приведен шестнадцатеричный формат инструкции и формат сборки MSIL, а также краткая справочная сводка:

Формат Формат сборки Описание
B6 conv.ovf.u2 Преобразуйте в unsigned int16 (в стеке как int32) и создайте исключение при переполнении.

Переходный режим стека в последовательном порядке:

  1. value помещается в стек.

  2. value извлекается из стека, и выполняется попытка преобразования. При переполнении возникает исключение.

  3. Если преобразование выполнено успешно, полученное значение помещается в стек.

Код conv.ovf.u2 операции преобразует объект в value верхней части стека в тип, указанный в коде операции, и помещает преобразованное значение в верхнюю часть стека. Если значение слишком велико или слишком мало для представления целевым типом, возникает исключение.

Преобразования чисел с плавающей запятой в целочисленные значения усечают число к нулю. Обратите внимание, что целочисленные значения менее 4 байт расширяются до int32 при загрузке в стек вычислений (если conv.ovf.i не используются или conv.ovf.u , в этом случае результатом также native intявляется ).

OverflowException возникает, если результат не может быть представлен в типе результата.

Emit Следующая перегрузка conv.ovf.u2 метода может использовать код операции:

Применяется к