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


OpCodes.Conv_Ovf_I4 Поле

Определение

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

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

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

Комментарии

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

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

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

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

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

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

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

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

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

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

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