Aracılığıyla paylaş


OpCodes.Ldind_U1 Alan

Tanım

Değerlendirme yığınına türündeki unsigned int8 bir int32 değeri dolaylı olarak yükler.

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

Alan Değeri

Açıklamalar

Aşağıdaki tabloda yönergenin onaltılık ve Microsoft Ara Dili (MSIL) derleme biçimi ve kısa başvuru özeti listelenmiştir:

Biçimlendir Derleme Biçimi Description
47 ldind.u1 adres addr değerini unsigned int8 yığına olarak int32yükler.

Sıralı sırada yığın geçiş davranışı şu şekildedir:

  1. Yığına bir adres gönderilir.

  2. Adres yığından çıkarılır; adreste bulunan değer getirilir.

  3. Getirilen değer yığına gönderilir.

Yönergeldind.u1, belirtilen adresten (türünative int, &veya *) bir unsigned int8 değeri dolaylı olarak yığına olarak int32yükler.

Tüm yönergeler, ldind karşılık gelen yerleşik değer sınıfını belirten yönerge Ldobj kısayollarıdır.

Değerlendirme yığınına yüklendiklerinde 4 bayttan küçük tamsayı değerlerinin (değilnative int) olarak genişletildiğini int32 unutmayın. Kayan nokta değerleri değerlendirme yığınına yüklendiğinde türe F dönüştürülür.

Doğru biçimlendirilmiş Microsoft Ara Dili (MSIL), yönergelerin ldind işaretçinin türüyle tutarlı bir şekilde kullanılmasını sağlar.

Başlangıçta yığına gönderilen adres, makinedeki nesnelerin doğal boyutuna hizalanmalıdır veya bir NullReferenceException oluşabilir (önleyici ölçüler Unaligned için ön ek yönergesine bakın). Adresleri döndüren tüm MSIL yönergelerinin sonuçları (örneğin, Ldloca ve Ldarga) güvenli bir şekilde hizalanır. 1 bayttan büyük veri türleri için bayt sıralaması hedef CPU'ya bağlıdır. Bayt sıralamaya bağlı kod tüm platformlarda çalışmayabilir.

NullReferenceException geçersiz bir adres algılanırsa oluşturulabilir.

Aşağıdaki Emit yöntem aşırı yüklemesi, opcode'unu ldind.u1 kullanabilir:

Şunlara uygulanır