Share via


OpCodes Kelas

Definisi

Menyediakan representasi bidang dari instruksi Microsoft Intermediate Language (MSIL) untuk emisi oleh ILGenerator anggota kelas (seperti Emit(OpCode)).

public ref class OpCodes
public class OpCodes
[System.Runtime.InteropServices.ComVisible(true)]
public class OpCodes
type OpCodes = class
[<System.Runtime.InteropServices.ComVisible(true)>]
type OpCodes = class
Public Class OpCodes
Warisan
OpCodes
Atribut

Contoh

Contoh berikut menunjukkan konstruksi metode dinamis menggunakan ILGenerator untuk memancarkan OpCodesMethodBuilderke dalam .

using namespace System;
using namespace System::Threading;
using namespace System::Reflection;
using namespace System::Reflection::Emit;
Type^ CreateDynamicType()
{
   array<Type^>^ctorParams = {int::typeid,int::typeid};
   AppDomain^ myDomain = Thread::GetDomain();
   AssemblyName^ myAsmName = gcnew AssemblyName;
   myAsmName->Name = "MyDynamicAssembly";
   AssemblyBuilder^ myAsmBuilder = myDomain->DefineDynamicAssembly( myAsmName, AssemblyBuilderAccess::Run );
   ModuleBuilder^ pointModule = myAsmBuilder->DefineDynamicModule( "PointModule", "Point.dll" );
   TypeBuilder^ pointTypeBld = pointModule->DefineType( "Point", TypeAttributes::Public );
   FieldBuilder^ xField = pointTypeBld->DefineField( "x", int::typeid, FieldAttributes::Public );
   FieldBuilder^ yField = pointTypeBld->DefineField( "y", int::typeid, FieldAttributes::Public );
   Type^ objType = Type::GetType( "System.Object" );
   ConstructorInfo^ objCtor = objType->GetConstructor( gcnew array<Type^>(0) );
   ConstructorBuilder^ pointCtor = pointTypeBld->DefineConstructor( MethodAttributes::Public, CallingConventions::Standard, ctorParams );
   ILGenerator^ ctorIL = pointCtor->GetILGenerator();
   
   // First, you build the constructor.
   ctorIL->Emit( OpCodes::Ldarg_0 );
   ctorIL->Emit( OpCodes::Call, objCtor );
   ctorIL->Emit( OpCodes::Ldarg_0 );
   ctorIL->Emit( OpCodes::Ldarg_1 );
   ctorIL->Emit( OpCodes::Stfld, xField );
   ctorIL->Emit( OpCodes::Ldarg_0 );
   ctorIL->Emit( OpCodes::Ldarg_2 );
   ctorIL->Emit( OpCodes::Stfld, yField );
   ctorIL->Emit( OpCodes::Ret );
   
   //  Now, you'll build a method to output some information on the
   // inside your dynamic class. This method will have the following
   // definition in C#:
   //  public void WritePoint()
   MethodBuilder^ writeStrMthd = pointTypeBld->DefineMethod( "WritePoint", MethodAttributes::Public, void::typeid, nullptr );
   ILGenerator^ writeStrIL = writeStrMthd->GetILGenerator();
   
   // The below ILGenerator created demonstrates a few ways to create
   // String* output through STDIN.
   // ILGenerator::EmitWriteLine(String*) will generate a ldstr and a
   // call to WriteLine for you.
   writeStrIL->EmitWriteLine( "The value of this current instance is:" );
   
   // Here, you will do the hard work yourself. First, you need to create
   // the String* we will be passing and obtain the correct WriteLine overload
   // for said String*. In the below case, you are substituting in two values,
   // so the chosen overload is Console::WriteLine(String*, Object*, Object*).
   String^ inStr = "( {0}, {1})";
   array<Type^>^wlParams = {String::typeid,Object::typeid,Object::typeid};
   
   // We need the MethodInfo to pass into EmitCall later.
   MethodInfo^ writeLineMI = Console::typeid->GetMethod( "WriteLine", wlParams );
   
   // Push the String* with the substitutions onto the stack.
   // This is the first argument for WriteLine - the String* one.
   writeStrIL->Emit( OpCodes::Ldstr, inStr );
   
   // Since the second argument is an Object*, and it corresponds to
   // to the substitution for the value of our integer field, you
   // need to box that field to an Object*. First, push a reference
   // to the current instance, and then push the value stored in
   // field 'x'. We need the reference to the current instance (stored
   // in local argument index 0) so Ldfld can load from the correct
   // instance (this one).
   writeStrIL->Emit( OpCodes::Ldarg_0 );
   writeStrIL->Emit( OpCodes::Ldfld, xField );
   
   // Now, we execute the box opcode, which pops the value of field 'x',
   // returning a reference to the integer value boxed as an Object*.
   writeStrIL->Emit( OpCodes::Box, int::typeid );
   
   // Atop the stack, you'll find our String* inStr, followed by a reference
   // to the boxed value of 'x'. Now, you need to likewise box field 'y'.
   writeStrIL->Emit( OpCodes::Ldarg_0 );
   writeStrIL->Emit( OpCodes::Ldfld, yField );
   writeStrIL->Emit( OpCodes::Box, int::typeid );
   
   // Now, you have all of the arguments for your call to
   // Console::WriteLine(String*, Object*, Object*) atop the stack:
   // the String* InStr, a reference to the boxed value of 'x', and
   // a reference to the boxed value of 'y'.
   // Call Console::WriteLine(String*, Object*, Object*) with EmitCall.
   writeStrIL->EmitCall( OpCodes::Call, writeLineMI, nullptr );
   
   // Lastly, EmitWriteLine can also output the value of a field
   // using the overload EmitWriteLine(FieldInfo).
   writeStrIL->EmitWriteLine( "The value of 'x' is:" );
   writeStrIL->EmitWriteLine( xField );
   writeStrIL->EmitWriteLine( "The value of 'y' is:" );
   writeStrIL->EmitWriteLine( yField );
   
   // Since we return no value (void), the ret opcode will not
   // return the top stack value.
   writeStrIL->Emit( OpCodes::Ret );
   return pointTypeBld->CreateType();
}

int main()
{
   array<Object^>^ctorParams = gcnew array<Object^>(2);
   Console::Write( "Enter a integer value for X: " );
   String^ myX = Console::ReadLine();
   Console::Write( "Enter a integer value for Y: " );
   String^ myY = Console::ReadLine();
   Console::WriteLine( "---" );
   ctorParams[ 0 ] = Convert::ToInt32( myX );
   ctorParams[ 1 ] = Convert::ToInt32( myY );
   Type^ ptType = CreateDynamicType();
   Object^ ptInstance = Activator::CreateInstance( ptType, ctorParams );
   ptType->InvokeMember( "WritePoint", BindingFlags::InvokeMethod, nullptr, ptInstance, gcnew array<Object^>(0) );
}

using System;
using System.Threading;
using System.Reflection;
using System.Reflection.Emit;

class EmitWriteLineDemo {

   public static Type CreateDynamicType() {
       Type[] ctorParams = new Type[] {typeof(int),
                   typeof(int)};
    
       AppDomain myDomain = Thread.GetDomain();
       AssemblyName myAsmName = new AssemblyName();
       myAsmName.Name = "MyDynamicAssembly";

       AssemblyBuilder myAsmBuilder = myDomain.DefineDynamicAssembly(
                      myAsmName,
                      AssemblyBuilderAccess.Run);

       ModuleBuilder pointModule = myAsmBuilder.DefineDynamicModule("PointModule",
                                    "Point.dll");

       TypeBuilder pointTypeBld = pointModule.DefineType("Point",
                                  TypeAttributes.Public);

       FieldBuilder xField = pointTypeBld.DefineField("x", typeof(int),
                                                      FieldAttributes.Public);
       FieldBuilder yField = pointTypeBld.DefineField("y", typeof(int),
                                                      FieldAttributes.Public);

       Type objType = Type.GetType("System.Object");
       ConstructorInfo objCtor = objType.GetConstructor(new Type[0]);

       ConstructorBuilder pointCtor = pointTypeBld.DefineConstructor(
                                   MethodAttributes.Public,
                                   CallingConventions.Standard,
                                   ctorParams);
       ILGenerator ctorIL = pointCtor.GetILGenerator();

       // First, you build the constructor.
       ctorIL.Emit(OpCodes.Ldarg_0);
       ctorIL.Emit(OpCodes.Call, objCtor);
       ctorIL.Emit(OpCodes.Ldarg_0);
       ctorIL.Emit(OpCodes.Ldarg_1);
       ctorIL.Emit(OpCodes.Stfld, xField);
       ctorIL.Emit(OpCodes.Ldarg_0);
       ctorIL.Emit(OpCodes.Ldarg_2);
       ctorIL.Emit(OpCodes.Stfld, yField);
       ctorIL.Emit(OpCodes.Ret);

       //  Now, you'll build a method to output some information on the
       // inside your dynamic class. This method will have the following
       // definition in C#:
    //  public void WritePoint()

       MethodBuilder writeStrMthd = pointTypeBld.DefineMethod(
                                     "WritePoint",
                             MethodAttributes.Public,
                                             typeof(void),
                                             null);

       ILGenerator writeStrIL = writeStrMthd.GetILGenerator();

       // The below ILGenerator created demonstrates a few ways to create
       // string output through STDIN.

       // ILGenerator.EmitWriteLine(string) will generate a ldstr and a
       // call to WriteLine for you.

       writeStrIL.EmitWriteLine("The value of this current instance is:");

       // Here, you will do the hard work yourself. First, you need to create
       // the string we will be passing and obtain the correct WriteLine overload
       // for said string. In the below case, you are substituting in two values,
       // so the chosen overload is Console.WriteLine(string, object, object).

       String inStr = "({0}, {1})";
       Type[] wlParams = new Type[] {typeof(string),
                     typeof(object),
                     typeof(object)};

       // We need the MethodInfo to pass into EmitCall later.

       MethodInfo writeLineMI = typeof(Console).GetMethod(
                            "WriteLine",
                        wlParams);

       // Push the string with the substitutions onto the stack.
       // This is the first argument for WriteLine - the string one.

       writeStrIL.Emit(OpCodes.Ldstr, inStr);

       // Since the second argument is an object, and it corresponds to
       // to the substitution for the value of our integer field, you
       // need to box that field to an object. First, push a reference
       // to the current instance, and then push the value stored in
       // field 'x'. We need the reference to the current instance (stored
       // in local argument index 0) so Ldfld can load from the correct
       // instance (this one).

       writeStrIL.Emit(OpCodes.Ldarg_0);
       writeStrIL.Emit(OpCodes.Ldfld, xField);

       // Now, we execute the box opcode, which pops the value of field 'x',
       // returning a reference to the integer value boxed as an object.

       writeStrIL.Emit(OpCodes.Box, typeof(int));

       // Atop the stack, you'll find our string inStr, followed by a reference
       // to the boxed value of 'x'. Now, you need to likewise box field 'y'.

       writeStrIL.Emit(OpCodes.Ldarg_0);
       writeStrIL.Emit(OpCodes.Ldfld, yField);
       writeStrIL.Emit(OpCodes.Box, typeof(int));

       // Now, you have all of the arguments for your call to
       // Console.WriteLine(string, object, object) atop the stack:
       // the string InStr, a reference to the boxed value of 'x', and
       // a reference to the boxed value of 'y'.

       // Call Console.WriteLine(string, object, object) with EmitCall.

       writeStrIL.EmitCall(OpCodes.Call, writeLineMI, null);

       // Lastly, EmitWriteLine can also output the value of a field
       // using the overload EmitWriteLine(FieldInfo).

       writeStrIL.EmitWriteLine("The value of 'x' is:");
       writeStrIL.EmitWriteLine(xField);
       writeStrIL.EmitWriteLine("The value of 'y' is:");
       writeStrIL.EmitWriteLine(yField);

       // Since we return no value (void), the ret opcode will not
       // return the top stack value.

       writeStrIL.Emit(OpCodes.Ret);

       return pointTypeBld.CreateType();
   }

   public static void Main() {

      object[] ctorParams = new object[2];

      Console.Write("Enter a integer value for X: ");
      string myX = Console.ReadLine();
      Console.Write("Enter a integer value for Y: ");
      string myY = Console.ReadLine();

      Console.WriteLine("---");

      ctorParams[0] = Convert.ToInt32(myX);
      ctorParams[1] = Convert.ToInt32(myY);

      Type ptType = CreateDynamicType();

      object ptInstance = Activator.CreateInstance(ptType, ctorParams);
      ptType.InvokeMember("WritePoint",
              BindingFlags.InvokeMethod,
              null,
              ptInstance,
              new object[0]);
   }
}

Imports System.Threading
Imports System.Reflection
Imports System.Reflection.Emit

 _

Class EmitWriteLineDemo
   
   
   Public Shared Function CreateDynamicType() As Type

      Dim ctorParams() As Type = {GetType(Integer), GetType(Integer)}
      
      Dim myDomain As AppDomain = Thread.GetDomain()
      Dim myAsmName As New AssemblyName()
      myAsmName.Name = "MyDynamicAssembly"
      
      Dim myAsmBuilder As AssemblyBuilder = myDomain.DefineDynamicAssembly(myAsmName, AssemblyBuilderAccess.RunAndSave)
      
      Dim pointModule As ModuleBuilder = myAsmBuilder.DefineDynamicModule("PointModule", "Point.dll")
      
      Dim pointTypeBld As TypeBuilder = pointModule.DefineType("Point", _
                                   TypeAttributes.Public)
      
      Dim xField As FieldBuilder = pointTypeBld.DefineField("x", _
                                GetType(Integer), _
                                FieldAttributes.Public)
      Dim yField As FieldBuilder = pointTypeBld.DefineField("y", _
                                GetType(Integer), _
                                FieldAttributes.Public)
      
      
      Dim objType As Type = Type.GetType("System.Object")
      Dim objCtor As ConstructorInfo = objType.GetConstructor(New Type(){})
      
      Dim pointCtor As ConstructorBuilder = pointTypeBld.DefineConstructor( _
                             MethodAttributes.Public, _
                             CallingConventions.Standard, _
                             ctorParams)
      Dim ctorIL As ILGenerator = pointCtor.GetILGenerator()
      
      
      ' First, you build the constructor.

      ctorIL.Emit(OpCodes.Ldarg_0)
      ctorIL.Emit(OpCodes.Call, objCtor)
      ctorIL.Emit(OpCodes.Ldarg_0)
      ctorIL.Emit(OpCodes.Ldarg_1)
      ctorIL.Emit(OpCodes.Stfld, xField)
      ctorIL.Emit(OpCodes.Ldarg_0)
      ctorIL.Emit(OpCodes.Ldarg_2)
      ctorIL.Emit(OpCodes.Stfld, yField)
      ctorIL.Emit(OpCodes.Ret)
      
      '  Now, you'll build a method to output some information on the
      ' inside your dynamic class. This method will have the following
      ' definition in C#:
      '  Public Sub WritePoint() 

      Dim writeStrMthd As MethodBuilder = pointTypeBld.DefineMethod("WritePoint", _
                                    MethodAttributes.Public, _
                                    Nothing, Nothing)
      
      Dim writeStrIL As ILGenerator = writeStrMthd.GetILGenerator()
      
      ' The below ILGenerator created demonstrates a few ways to create
      ' string output through STDIN. 
      ' ILGenerator.EmitWriteLine(string) will generate a ldstr and a 
      ' call to WriteLine for you.

      writeStrIL.EmitWriteLine("The value of this current instance is:")
      
      ' Here, you will do the hard work yourself. First, you need to create
      ' the string we will be passing and obtain the correct WriteLine overload
      ' for said string. In the below case, you are substituting in two values,
      ' so the chosen overload is Console.WriteLine(string, object, object).

      Dim inStr As [String] = "({0}, {1})"
      Dim wlParams() As Type = {GetType(String), GetType(Object), GetType(Object)}
      
      ' We need the MethodInfo to pass into EmitCall later.

      Dim writeLineMI As MethodInfo = GetType(Console).GetMethod("WriteLine", wlParams)
      
      ' Push the string with the substitutions onto the stack.
      ' This is the first argument for WriteLine - the string one. 

      writeStrIL.Emit(OpCodes.Ldstr, inStr)
      
      ' Since the second argument is an object, and it corresponds to
      ' to the substitution for the value of our integer field, you 
      ' need to box that field to an object. First, push a reference
      ' to the current instance, and then push the value stored in
      ' field 'x'. We need the reference to the current instance (stored
      ' in local argument index 0) so Ldfld can load from the correct
      ' instance (this one).

      writeStrIL.Emit(OpCodes.Ldarg_0)
      writeStrIL.Emit(OpCodes.Ldfld, xField)
      
      ' Now, we execute the box opcode, which pops the value of field 'x',
      ' returning a reference to the integer value boxed as an object.

      writeStrIL.Emit(OpCodes.Box, GetType(Integer))
      
      ' Atop the stack, you'll find our string inStr, followed by a reference
      ' to the boxed value of 'x'. Now, you need to likewise box field 'y'.

      writeStrIL.Emit(OpCodes.Ldarg_0)
      writeStrIL.Emit(OpCodes.Ldfld, yField)
      writeStrIL.Emit(OpCodes.Box, GetType(Integer))
      
      ' Now, you have all of the arguments for your call to
      ' Console.WriteLine(string, object, object) atop the stack:
      ' the string InStr, a reference to the boxed value of 'x', and
      ' a reference to the boxed value of 'y'.
      ' Call Console.WriteLine(string, object, object) with EmitCall.

      writeStrIL.EmitCall(OpCodes.Call, writeLineMI, Nothing)
      
      ' Lastly, EmitWriteLine can also output the value of a field
      ' using the overload EmitWriteLine(FieldInfo).

      writeStrIL.EmitWriteLine("The value of 'x' is:")
      writeStrIL.EmitWriteLine(xField)
      writeStrIL.EmitWriteLine("The value of 'y' is:")
      writeStrIL.EmitWriteLine(yField)
      
      ' Since we return no value (void), the ret opcode will not
      ' return the top stack value.

      writeStrIL.Emit(OpCodes.Ret)
      
      Return pointTypeBld.CreateType()

   End Function 'CreateDynamicType
    
   
   Public Shared Sub Main()
      
      Dim ctorParams(1) As Object
      
      Console.Write("Enter a integer value for X: ")
      Dim myX As String = Console.ReadLine()
      Console.Write("Enter a integer value for Y: ")
      Dim myY As String = Console.ReadLine()
      
      Console.WriteLine("---")
      
      ctorParams(0) = Convert.ToInt32(myX)
      ctorParams(1) = Convert.ToInt32(myY)
      
      Dim ptType As Type = CreateDynamicType()

      Dim ptInstance As Object = Activator.CreateInstance(ptType, ctorParams)

      ptType.InvokeMember("WritePoint", _
              BindingFlags.InvokeMethod, _
              Nothing, ptInstance, Nothing)

   End Sub

End Class

Keterangan

Untuk deskripsi terperinci tentang opcode anggota, lihat dokumentasi Common Language Infrastructure (CLI), terutama "Partisi III: Set Instruksi CIL" dan "Partisi II: Definisi metadata dan Semantik". Untuk informasi selengkapnya, lihat INFRASTRUKTUR Bahasa Umum (CLI) ECMA 335.

Bidang

Add

Menambahkan dua nilai dan mendorong hasilnya ke tumpukan evaluasi.

Add_Ovf

Menambahkan dua bilangan bulat, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

Add_Ovf_Un

Menambahkan dua nilai bilangan bulat yang tidak ditandatangani, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

And

Menghitung bitwise AND dari dua nilai dan mendorong hasilnya ke tumpukan evaluasi.

Arglist

Mengembalikan penunjuk tidak terkelola ke daftar argumen metode saat ini.

Beq

Mentransfer kontrol ke instruksi target jika dua nilai sama.

Beq_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika dua nilai sama.

Bge

Mentransfer kontrol ke instruksi target jika nilai pertama lebih besar dari atau sama dengan nilai kedua.

Bge_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama lebih besar dari atau sama dengan nilai kedua.

Bge_Un

Mentransfer kontrol ke instruksi target jika nilai pertama lebih besar dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Bge_Un_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama lebih besar dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Bgt

Mentransfer kontrol ke instruksi target jika nilai pertama lebih besar dari nilai kedua.

Bgt_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama lebih besar dari nilai kedua.

Bgt_Un

Mentransfer kontrol ke instruksi target jika nilai pertama lebih besar dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Bgt_Un_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama lebih besar dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Ble

Mentransfer kontrol ke instruksi target jika nilai pertama kurang dari atau sama dengan nilai kedua.

Ble_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama kurang dari atau sama dengan nilai kedua.

Ble_Un

Mentransfer kontrol ke instruksi target jika nilai pertama kurang dari atau sama dengan nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Ble_Un_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama kurang dari atau sama dengan nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Blt

Mentransfer kontrol ke instruksi target jika nilai pertama kurang dari nilai kedua.

Blt_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama kurang dari nilai kedua.

Blt_Un

Mentransfer kontrol ke instruksi target jika nilai pertama kurang dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Blt_Un_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika nilai pertama kurang dari nilai kedua, saat membandingkan nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan.

Bne_Un

Mentransfer kontrol ke instruksi target ketika dua nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan tidak sama.

Bne_Un_S

Mentransfer kontrol ke instruksi target (bentuk pendek) ketika dua nilai bilangan bulat yang tidak ditandatangani atau nilai float yang tidak diurutkan tidak sama.

Box

Mengonversi jenis nilai menjadi referensi objek (jenis O).

Br

Secara tanpa syarat mentransfer kontrol ke instruksi target.

Br_S

Secara tanpa syarat mentransfer kontrol ke instruksi target (bentuk pendek).

Break

Memberi sinyal Common Language Infrastructure (CLI) untuk memberi tahu debugger bahwa titik henti telah tersandung.

Brfalse

Mentransfer kontrol ke instruksi target jika value adalah false, referensi null (Nothing di Visual Basic), atau nol.

Brfalse_S

Mentransfer kontrol ke instruksi target jika value adalah false, referensi null, atau nol.

Brtrue

Mentransfer kontrol ke instruksi target jika value adalah true, bukan null, atau bukan nol.

Brtrue_S

Mentransfer kontrol ke instruksi target (bentuk pendek) jika value adalah true, bukan null, atau bukan nol.

Call

Memanggil metode yang ditunjukkan oleh deskriptor metode yang diteruskan.

Calli

Memanggil metode yang ditunjukkan pada tumpukan evaluasi (sebagai penunjuk ke titik masuk) dengan argumen yang dijelaskan oleh konvensi panggilan.

Callvirt

Memanggil metode yang terlambat terikat pada objek, mendorong nilai pengembalian ke tumpukan evaluasi.

Castclass

Upaya untuk melemparkan objek yang diteruskan oleh referensi ke kelas yang ditentukan.

Ceq

Membandingkan dua nilai. Jika sama, nilai bilangan bulat 1 (int32) didorong ke tumpukan evaluasi; jika tidak, 0 (int32) didorong ke tumpukan evaluasi.

Cgt

Membandingkan dua nilai. Jika nilai pertama lebih besar dari yang kedua, nilai bilangan bulat 1 (int32) didorong ke tumpukan evaluasi; jika tidak, 0 (int32) didorong ke tumpukan evaluasi.

Cgt_Un

Membandingkan dua nilai yang tidak ditandatangani atau tidak berurut. Jika nilai pertama lebih besar dari yang kedua, nilai bilangan bulat 1 (int32) didorong ke tumpukan evaluasi; jika tidak, 0 (int32) didorong ke tumpukan evaluasi.

Ckfinite

ArithmeticException Melemparkan jika nilai bukan angka terbatas.

Clt

Membandingkan dua nilai. Jika nilai pertama kurang dari yang kedua, nilai bilangan bulat 1 (int32) didorong ke tumpukan evaluasi; jika tidak, 0 (int32) didorong ke tumpukan evaluasi.

Clt_Un

Membandingkan nilai value1 yang tidak ditandatangani atau tidak berurut dan value2. Jika value1 kurang dari value2, maka nilai bilangan bulat 1 (int32) didorong ke tumpukan evaluasi; jika tidak, 0 (int32) didorong ke tumpukan evaluasi.

Constrained

Membatasi jenis di mana panggilan metode virtual dilakukan.

Conv_I

Mengonversi nilai di atas tumpukan evaluasi menjadi native int.

Conv_I1

Mengonversi nilai di atas tumpukan evaluasi ke int8, lalu memperluas (bantalan) ke int32.

Conv_I2

Mengonversi nilai di atas tumpukan evaluasi ke int16, lalu memperluas (bantalan) ke int32.

Conv_I4

Mengonversi nilai di atas tumpukan evaluasi menjadi int32.

Conv_I8

Mengonversi nilai di atas tumpukan evaluasi menjadi int64.

Conv_Ovf_I

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi ditandatangani native int, menghasilkan luapan OverflowException .

Conv_Ovf_I_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi menjadi ditandatangani native int, melempar luapan OverflowException .

Conv_Ovf_I1

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi untuk ditandatangani int8 dan memperluasnya ke int32, melemparkan luapan OverflowException .

Conv_Ovf_I1_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int8 dan memperluasnya ke int32, melempar luapan OverflowException .

Conv_Ovf_I2

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi untuk ditandatangani int16 dan memperluasnya ke int32, melempar luapan OverflowException .

Conv_Ovf_I2_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int16 dan memperluasnya ke int32, melempar luapan OverflowException .

Conv_Ovf_I4

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int32, menghasilkan luapan OverflowException .

Conv_Ovf_I4_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int32, melempar luapan OverflowException .

Conv_Ovf_I8

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int64, menghasilkan luapan OverflowException .

Conv_Ovf_I8_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi menjadi ditandatangani int64, melempar luapan OverflowException .

Conv_Ovf_U

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi unsigned native int, melempar luapan OverflowException .

Conv_Ovf_U_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi ke unsigned native int, melempar luapan OverflowException .

Conv_Ovf_U1

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi ke unsigned int8 dan memperluasnya ke int32, melemparkan luapan OverflowException .

Conv_Ovf_U1_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi ke unsigned int8 dan memperluasnya ke int32, melempar luapan OverflowException .

Conv_Ovf_U2

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi ke unsigned int16 dan memperluasnya ke int32, melemparkan luapan OverflowException .

Conv_Ovf_U2_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi ke unsigned int16 dan memperluasnya ke int32, melempar luapan OverflowException .

Conv_Ovf_U4

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi unsigned int32, melempar luapan OverflowException .

Conv_Ovf_U4_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi ke unsigned int32, melempar luapan OverflowException .

Conv_Ovf_U8

Mengonversi nilai yang ditandatangani di atas tumpukan evaluasi menjadi unsigned int64, melempar luapan OverflowException .

Conv_Ovf_U8_Un

Mengonversi nilai yang tidak ditandatangani di atas tumpukan evaluasi ke unsigned int64, melempar luapan OverflowException .

Conv_R_Un

Mengonversi nilai bilangan bulat yang tidak ditandatangani di atas tumpukan evaluasi menjadi float32.

Conv_R4

Mengonversi nilai di atas tumpukan evaluasi menjadi float32.

Conv_R8

Mengonversi nilai di atas tumpukan evaluasi menjadi float64.

Conv_U

Mengonversi nilai di atas tumpukan evaluasi ke unsigned native int, dan memperluasnya ke native int.

Conv_U1

Mengonversi nilai di atas tumpukan evaluasi ke unsigned int8, dan memperluasnya ke int32.

Conv_U2

Mengonversi nilai di atas tumpukan evaluasi ke unsigned int16, dan memperluasnya ke int32.

Conv_U4

Mengonversi nilai di atas tumpukan evaluasi ke unsigned int32, dan memperluasnya ke int32.

Conv_U8

Mengonversi nilai di atas tumpukan evaluasi ke unsigned int64, dan memperluasnya ke int64.

Cpblk

Menyalin byte angka tertentu dari alamat sumber ke alamat tujuan.

Cpobj

Menyalin jenis nilai yang terletak di alamat objek (jenis &, atau native int) ke alamat objek tujuan (jenis &, atau native int).

Div

Membagi dua nilai dan mendorong hasilnya sebagai floating-point (jenis F) atau quotient (jenis int32) ke tumpukan evaluasi.

Div_Un

Membagi dua nilai bilangan bulat yang tidak ditandatangani dan mendorong hasil (int32) ke tumpukan evaluasi.

Dup

Menyalin nilai teratas saat ini pada tumpukan evaluasi, lalu mendorong salinan ke tumpukan evaluasi.

Endfilter

Mentransfer kontrol dari filter klausul pengecualian kembali ke penanganan pengecualian Common Language Infrastructure (CLI).

Endfinally

Mentransfer kontrol dari fault klausul atau finally blok pengecualian kembali ke penanganan pengecualian Common Language Infrastructure (CLI).

Initblk

Menginisialisasi blok memori tertentu pada alamat tertentu ke ukuran tertentu dan nilai awal.

Initobj

Menginisialisasi setiap bidang jenis nilai pada alamat tertentu ke referensi null atau 0 dari jenis primitif yang sesuai.

Isinst

Menguji apakah referensi objek (jenis O) adalah instans kelas tertentu.

Jmp

Keluar dari metode saat ini dan melompat ke metode yang ditentukan.

Ldarg

Memuat argumen (dirujuk oleh nilai indeks tertentu) ke tumpukan.

Ldarg_0

Memuat argumen pada indeks 0 ke tumpukan evaluasi.

Ldarg_1

Memuat argumen pada indeks 1 ke tumpukan evaluasi.

Ldarg_2

Memuat argumen pada indeks 2 ke tumpukan evaluasi.

Ldarg_3

Memuat argumen pada indeks 3 ke tumpukan evaluasi.

Ldarg_S

Memuat argumen (dirujuk oleh indeks formulir pendek tertentu) ke tumpukan evaluasi.

Ldarga

Muat alamat argumen ke tumpukan evaluasi.

Ldarga_S

Muat alamat argumen, dalam bentuk pendek, ke tumpukan evaluasi.

Ldc_I4

Mendorong nilai jenis int32 yang disediakan ke tumpukan evaluasi sebagai int32.

Ldc_I4_0

Mendorong nilai bilangan bulat 0 ke tumpukan evaluasi sebagai int32.

Ldc_I4_1

Mendorong nilai bilangan bulat 1 ke tumpukan evaluasi sebagai int32.

Ldc_I4_2

Mendorong nilai bilangan bulat 2 ke tumpukan evaluasi sebagai int32.

Ldc_I4_3

Mendorong nilai bilangan bulat 3 ke tumpukan evaluasi sebagai int32.

Ldc_I4_4

Mendorong nilai bilangan bulat 4 ke tumpukan evaluasi sebagai int32.

Ldc_I4_5

Mendorong nilai bilangan bulat 5 ke tumpukan evaluasi sebagai int32.

Ldc_I4_6

Mendorong nilai bilangan bulat 6 ke tumpukan evaluasi sebagai int32.

Ldc_I4_7

Mendorong nilai bilangan bulat 7 ke tumpukan evaluasi sebagai int32.

Ldc_I4_8

Mendorong nilai bilangan bulat 8 ke tumpukan evaluasi sebagai int32.

Ldc_I4_M1

Mendorong nilai bilangan bulat -1 ke tumpukan evaluasi sebagai int32.

Ldc_I4_S

Mendorong nilai yang disediakan int8 ke tumpukan evaluasi sebagai int32, bentuk pendek.

Ldc_I8

Mendorong nilai jenis int64 yang disediakan ke tumpukan evaluasi sebagai int64.

Ldc_R4

Mendorong nilai jenis float32 yang disediakan ke tumpukan evaluasi sebagai jenis F (float).

Ldc_R8

Mendorong nilai jenis float64 yang disediakan ke tumpukan evaluasi sebagai jenis F (float).

Ldelem

Memuat elemen pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai jenis yang ditentukan dalam instruksi.

Ldelem_I

Memuat elemen dengan jenis native int pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai native int.

Ldelem_I1

Memuat elemen dengan jenis int8 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelem_I2

Memuat elemen dengan jenis int16 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelem_I4

Memuat elemen dengan jenis int32 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelem_I8

Memuat elemen dengan jenis int64 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int64.

Ldelem_R4

Memuat elemen dengan jenis float32 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai jenis F (float).

Ldelem_R8

Memuat elemen dengan jenis float64 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai jenis F (float).

Ldelem_Ref

Memuat elemen yang berisi referensi objek pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai jenis O (referensi objek).

Ldelem_U1

Memuat elemen dengan jenis unsigned int8 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelem_U2

Memuat elemen dengan jenis unsigned int16 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelem_U4

Memuat elemen dengan jenis unsigned int32 pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai int32.

Ldelema

Memuat alamat elemen array pada indeks array tertentu ke bagian atas tumpukan evaluasi sebagai jenis & (penunjuk terkelola).

Ldfld

Menemukan nilai bidang dalam objek yang referensinya saat ini ada di tumpukan evaluasi.

Ldflda

Menemukan alamat bidang dalam objek yang referensinya saat ini ada di tumpukan evaluasi.

Ldftn

Mendorong penunjuk yang tidak dikelola (jenis native int) ke kode asli yang menerapkan metode tertentu ke tumpukan evaluasi.

Ldind_I

Memuat nilai jenis native int sebagai native int ke tumpukan evaluasi secara tidak langsung.

Ldind_I1

Memuat nilai jenis int8 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldind_I2

Memuat nilai jenis int16 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldind_I4

Memuat nilai jenis int32 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldind_I8

Memuat nilai jenis int64 sebagai int64 ke tumpukan evaluasi secara tidak langsung.

Ldind_R4

Memuat nilai jenis float32 sebagai jenis F (float) ke tumpukan evaluasi secara tidak langsung.

Ldind_R8

Memuat nilai jenis float64 sebagai jenis F (float) ke tumpukan evaluasi secara tidak langsung.

Ldind_Ref

Memuat referensi objek sebagai jenis O (referensi objek) ke tumpukan evaluasi secara tidak langsung.

Ldind_U1

Memuat nilai jenis unsigned int8 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldind_U2

Memuat nilai jenis unsigned int16 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldind_U4

Memuat nilai jenis unsigned int32 sebagai int32 ke tumpukan evaluasi secara tidak langsung.

Ldlen

Mendorong jumlah elemen array satu dimensi berbasis nol ke tumpukan evaluasi.

Ldloc

Memuat variabel lokal pada indeks tertentu ke tumpukan evaluasi.

Ldloc_0

Memuat variabel lokal pada indeks 0 ke tumpukan evaluasi.

Ldloc_1

Memuat variabel lokal pada indeks 1 ke tumpukan evaluasi.

Ldloc_2

Memuat variabel lokal pada indeks 2 ke tumpukan evaluasi.

Ldloc_3

Memuat variabel lokal pada indeks 3 ke tumpukan evaluasi.

Ldloc_S

Memuat variabel lokal pada indeks tertentu ke tumpukan evaluasi, bentuk pendek.

Ldloca

Memuat alamat variabel lokal pada indeks tertentu ke tumpukan evaluasi.

Ldloca_S

Memuat alamat variabel lokal pada indeks tertentu ke tumpukan evaluasi, bentuk pendek.

Ldnull

Mendorong referensi null (jenis O) ke tumpukan evaluasi.

Ldobj

Menyalin objek jenis nilai yang ditujukan ke alamat ke bagian atas tumpukan evaluasi.

Ldsfld

Mendorong nilai bidang statis ke tumpukan evaluasi.

Ldsflda

Mendorong alamat bidang statis ke tumpukan evaluasi.

Ldstr

Mendorong referensi objek baru ke string harfiah yang disimpan dalam metadata.

Ldtoken

Mengonversi token metadata ke representasi runtime-nya, mendorongnya ke tumpukan evaluasi.

Ldvirtftn

Mendorong penunjuk yang tidak dikelola (jenis native int) ke kode asli yang mengimplementasikan metode virtual tertentu yang terkait dengan objek tertentu ke tumpukan evaluasi.

Leave

Keluar dari wilayah kode yang dilindungi, mentransfer kontrol tanpa syarat ke instruksi target tertentu.

Leave_S

Keluar dari wilayah kode yang dilindungi, mentransfer kontrol tanpa syarat ke instruksi target (bentuk pendek).

Localloc

Mengalokasikan sejumlah byte tertentu dari kumpulan memori dinamis lokal dan mendorong alamat (penunjuk sementara, jenis *) dari byte pertama yang dialokasikan ke tumpukan evaluasi.

Mkrefany

Mendorong referensi yang diketik ke instans jenis tertentu ke tumpukan evaluasi.

Mul

Mengalikan dua nilai dan mendorong hasil pada tumpukan evaluasi.

Mul_Ovf

Mengalikan dua nilai bilangan bulat, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

Mul_Ovf_Un

Mengalikan dua nilai bilangan bulat yang tidak ditandatangani, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

Neg

Meniadakan nilai dan mendorong hasilnya ke tumpukan evaluasi.

Newarr

Mendorong referensi objek ke array satu dimensi berbasis nol baru yang elemennya berjenis tertentu ke tumpukan evaluasi.

Newobj

Membuat objek baru atau instans baru dari jenis nilai, mendorong referensi objek (jenis O) ke tumpukan evaluasi.

Nop

Mengisi ruang jika opcode di-patch. Tidak ada operasi yang bermakna yang dilakukan meskipun siklus pemrosesan dapat dikonsumsi.

Not

Menghitung pelengkap bitwise dari nilai bilangan bulat di atas tumpukan dan mendorong hasilnya ke tumpukan evaluasi sebagai jenis yang sama.

Or

Komputasi pelengkap bitwise dari dua nilai bilangan bulat di atas tumpukan dan dorong hasilnya ke tumpukan evaluasi.

Pop

Menghapus nilai yang saat ini berada di atas tumpukan evaluasi.

Prefix1

Ini adalah instruksi khusus.

Prefix2

Ini adalah instruksi khusus.

Prefix3

Ini adalah instruksi khusus.

Prefix4

Ini adalah instruksi khusus.

Prefix5

Ini adalah instruksi khusus.

Prefix6

Ini adalah instruksi khusus.

Prefix7

Ini adalah instruksi khusus.

Prefixref

Ini adalah instruksi khusus.

Readonly

Menentukan bahwa operasi alamat array berikutnya tidak melakukan pemeriksaan jenis pada durasi, dan mengembalikan penunjuk terkelola yang mutabilitasnya dibatasi.

Refanytype

Mengambil jenis token yang disematkan dalam referensi yang diketik.

Refanyval

Mengambil alamat (jenis &) yang disematkan dalam referensi yang ditik.

Rem

Membagi dua nilai dan mendorong sisanya ke tumpukan evaluasi.

Rem_Un

Membagi dua nilai yang tidak ditandatangani dan mendorong sisanya ke tumpukan evaluasi.

Ret

Mengembalikan dari metode saat ini, mendorong nilai pengembalian (jika ada) dari tumpukan evaluasi penerima panggilan ke tumpukan evaluasi penelepon.

Rethrow

Menumbuhkan kembali pengecualian saat ini.

Shl

Menggeser nilai bilangan bulat ke kiri (dalam nol) dengan jumlah bit tertentu, mendorong hasil ke tumpukan evaluasi.

Shr

Menggeser nilai bilangan bulat (dalam tanda) ke kanan dengan jumlah bit tertentu, mendorong hasil ke tumpukan evaluasi.

Shr_Un

Menggeser nilai bilangan bulat yang tidak ditandatangani (dalam nol) ke kanan dengan jumlah bit yang ditentukan, mendorong hasilnya ke tumpukan evaluasi.

Sizeof

Mendorong ukuran, dalam byte, dari jenis nilai yang disediakan ke tumpukan evaluasi.

Starg

Menyimpan nilai di atas tumpukan evaluasi di slot argumen pada indeks tertentu.

Starg_S

Menyimpan nilai di atas tumpukan evaluasi di slot argumen pada indeks tertentu, bentuk pendek.

Stelem

Mengganti elemen array pada indeks tertentu dengan nilai pada tumpukan evaluasi, yang jenisnya ditentukan dalam instruksi.

Stelem_I

Mengganti elemen array pada indeks tertentu dengan native int nilai pada tumpukan evaluasi.

Stelem_I1

Mengganti elemen array pada indeks tertentu dengan int8 nilai pada tumpukan evaluasi.

Stelem_I2

Mengganti elemen array pada indeks tertentu dengan int16 nilai pada tumpukan evaluasi.

Stelem_I4

Mengganti elemen array pada indeks tertentu dengan int32 nilai pada tumpukan evaluasi.

Stelem_I8

Mengganti elemen array pada indeks tertentu dengan int64 nilai pada tumpukan evaluasi.

Stelem_R4

Mengganti elemen array pada indeks tertentu dengan float32 nilai pada tumpukan evaluasi.

Stelem_R8

Mengganti elemen array pada indeks tertentu dengan float64 nilai pada tumpukan evaluasi.

Stelem_Ref

Mengganti elemen array pada indeks tertentu dengan nilai ref objek (jenis O) pada tumpukan evaluasi.

Stfld

Mengganti nilai yang disimpan di bidang referensi objek atau penunjuk dengan nilai baru.

Stind_I

Menyimpan nilai jenis native int pada alamat yang disediakan.

Stind_I1

Menyimpan nilai jenis int8 pada alamat yang disediakan.

Stind_I2

Menyimpan nilai jenis int16 pada alamat yang disediakan.

Stind_I4

Menyimpan nilai jenis int32 pada alamat yang disediakan.

Stind_I8

Menyimpan nilai jenis int64 pada alamat yang disediakan.

Stind_R4

Menyimpan nilai jenis float32 pada alamat yang disediakan.

Stind_R8

Menyimpan nilai jenis float64 pada alamat yang disediakan.

Stind_Ref

Menyimpan nilai referensi objek pada alamat yang disediakan.

Stloc

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya di daftar variabel lokal pada indeks tertentu.

Stloc_0

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya dalam daftar variabel lokal pada indeks 0.

Stloc_1

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya di daftar variabel lokal pada indeks 1.

Stloc_2

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya dalam daftar variabel lokal pada indeks 2.

Stloc_3

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya di daftar variabel lokal pada indeks 3.

Stloc_S

Memunculkan nilai saat ini dari bagian atas tumpukan evaluasi dan menyimpannya dalam daftar variabel lokal pada index (bentuk pendek).

Stobj

Menyalin nilai jenis tertentu dari tumpukan evaluasi ke dalam alamat memori yang disediakan.

Stsfld

Mengganti nilai bidang statis dengan nilai dari tumpukan evaluasi.

Sub

Mengurangi satu nilai dari nilai lain dan mendorong hasilnya ke tumpukan evaluasi.

Sub_Ovf

Mengurangi satu nilai bilangan bulat dari yang lain, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

Sub_Ovf_Un

Mengurangi satu nilai bilangan bulat yang tidak ditandatangani dari yang lain, melakukan pemeriksaan luapan, dan mendorong hasilnya ke tumpukan evaluasi.

Switch

Mengimplementasikan jump table.

Tailcall

Melakukan instruksi panggilan metode postfixed sehingga bingkai tumpukan metode saat ini dihapus sebelum instruksi panggilan aktual dijalankan.

Throw

Melempar objek pengecualian yang saat ini ada di tumpukan evaluasi.

Unaligned

Menunjukkan bahwa alamat yang saat ini berada di atas tumpukan evaluasi mungkin tidak selaras dengan ukuran alami instruksi segera setelahnya ldind, , stind, ldfldstfldldobj, stobj, , initblkatau cpblk .

Unbox

Mengonversi representasi kotak dari jenis nilai ke formulir yang tidak dikotak.

Unbox_Any

Mengonversi representasi berkotak tipe yang ditentukan dalam instruksi ke formulir yang tidak dikotak.

Volatile

Menentukan bahwa alamat yang saat ini berada di atas tumpukan evaluasi mungkin volatil, dan hasil pembacaan lokasi tersebut tidak dapat di-cache atau bahwa beberapa penyimpanan ke lokasi tersebut tidak dapat ditekan.

Xor

Menghitung XOR bitwise dari dua nilai teratas pada tumpukan evaluasi, mendorong hasilnya ke tumpukan evaluasi.

Metode

Equals(Object)

Menentukan apakah objek yang ditentukan sama dengan objek saat ini.

(Diperoleh dari Object)
GetHashCode()

Berfungsi sebagai fungsi hash default.

(Diperoleh dari Object)
GetType()

Mendapatkan instans Type saat ini.

(Diperoleh dari Object)
MemberwiseClone()

Membuat salinan dangkal dari yang saat ini Object.

(Diperoleh dari Object)
TakesSingleByteArgument(OpCode)

Mengembalikan true atau false jika opcode yang disediakan mengambil argumen byte tunggal.

ToString()

Mengembalikan string yang mewakili objek saat ini.

(Diperoleh dari Object)

Berlaku untuk