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


OpCodes.Conv_Ovf_I1_Un Поле

Определение

Преобразует значение без знака на вершине стека вычислений в значение int8 со знаком, расширяет его до int32 и создает исключение OverflowException в случае переполнения.

public: static initonly System::Reflection::Emit::OpCode Conv_Ovf_I1_Un;
public static readonly System.Reflection.Emit.OpCode Conv_Ovf_I1_Un;
 staticval mutable Conv_Ovf_I1_Un : System.Reflection.Emit.OpCode
Public Shared ReadOnly Conv_Ovf_I1_Un As OpCode 

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

Комментарии

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

Формат Формат сборки Описание
82 conv.ovf.i1.un Преобразует неподписаемое значение в ( int8 в стеке как int32) и создает исключение при переполнении.

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

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

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

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

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

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

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

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

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