OpCodes.Cpblk OpCodes.Cpblk OpCodes.Cpblk OpCodes.Cpblk Field

定義

ソース アドレスから指定した数のバイトを宛先アドレスにコピーします。Copies a specified number bytes from a source address to a destination address.

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

フィールド値

注釈

次の表は、命令の16進形式と Microsoft 中間言語 (MSIL) のアセンブリ形式と、簡単なリファレンスの概要を示しています。The following table lists the instruction's hexadecimal and Microsoft Intermediate Language (MSIL) assembly format, along with a brief reference summary:

形式Format アセンブリ形式Assembly Format 説明Description
FE 17FE 17 cpblkcpblk メモリブロック間でデータをコピーします。Copy data from one memory block to another.

スタックの移行動作は、次の順序で実行されます。The stack transitional behavior, in sequential order, is:

  1. 宛先アドレスはスタックにプッシュされます。The destination address is pushed onto the stack.

  2. ソースアドレスはスタックにプッシュされます。The source address is pushed onto the stack.

  3. コピーするバイト数がスタックにプッシュされます。The number of bytes to copy is pushed onto the stack.

  4. バイト数、送信元アドレス、および宛先アドレスがスタックからポップされます。指定されたバイト数が、転送元アドレスから宛先アドレスにコピーされます。The number of bytes, the source address, and the destination address are popped from the stack; the specified number of bytes are copied from the source address to the destination address.

@No__t-0 命令は、送信元アドレス (*native int、または &) から宛先アドレス (*native int、または &) に、バイトの数 (型 unsigned int32) をコピーします。The cpblk instruction copies a number (type unsigned int32) of bytes from a source address (of type *, native int, or &) to a destination address (of type *, native int, or &). コピー元とコピー先の領域が重複する場合、cpblk の動作は指定されません。The behavior of cpblk is unspecified if the source and destination areas overlap.

cpblk は、送信元と送信先の両方がコンピューターの自然サイズに合わせて配置されていることを前提としています。cpblk assumes that both the source and destination addressed are aligned to the natural size of the machine. @No__t-0 命令の直前に unaligned.<prefix> 命令を指定して、変換元または変換先のどちらかが整列していないことを示すことができます。The cpblk instruction can be immediately preceded by the unaligned.<prefix> instruction to indicate that either the source or the destination is unaligned.

@No__t-0 命令の操作は、直前の Volatile または Unaligned のプレフィックス命令によって変更できます。The operation of the cpblk instruction can be altered by an immediately preceding Volatile or Unaligned prefix instruction.

無効なアドレスが検出されると、NullReferenceException がスローされる可能性があります。NullReferenceException may be thrown if an invalid address is detected.

次の Emit メソッドオーバーロードは、cpblk オペコードを使用できます。The following Emit method overload can use the cpblk opcode:

  • ILGenerator (オペコード)ILGenerator.Emit(OpCode)

適用対象