OpCodes.Ldind_I8 Поле

Определение

Загружает значение типа int64 в int64 виде косвенного стека вычислений.

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

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

Комментарии

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

Формат Формат сборки Description
4C ldind.i8 int64 Загружает значение по адресу addr в стек в видеint64.

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

  1. Адрес передается в стек.

  2. Адрес подается из стека; Значение, расположенное по адресу, извлекается.

  3. Извлекаемое значение передается в стек.

Инструкция ldind.i8 косвенно загружает int64 значение из указанного адреса (типа native intили &*) в стек в виде int64.

ldind Все инструкции — это сочетания клавиш для Ldobj инструкции, указывающей соответствующий встроенный класс значений.

Обратите внимание, что целые значения менее 4 байтов расширяются ( int32 не native int) при загрузке в стек вычислений. Значения с плавающей запятой преобразуются в F тип при загрузке в стек вычислений.

Правильно сформированный Microsoft промежуточный язык (MSIL) гарантирует, что инструкции ldind используются в соответствии с типом указателя.

Адрес, первоначально отправленный на стек, должен быть выровнен по естественному размеру объектов на компьютере или NullReferenceException может произойти (см Unaligned . инструкцию префикса для предотвращения мер). Результаты всех инструкций MSIL, возвращающих адреса (например, Ldloca и Ldarga) безопасно выравниваются. Для типов данных, превышающих 1 байт, порядок байтов зависит от целевого ЦП. Код, зависящий от порядка байтов, может не выполняться на всех платформах.

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

Следующая Emit перегрузка метода может использовать ldind.i8 код opcode:

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