OpCodes.Cpblk フィールド

定義

ソース アドレスから指定した数のバイトを宛先アドレスにコピーします。

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 Intermediate Language (MSIL) アセンブリ形式と、簡単なリファレンスの概要を示します。

形式 アセンブリ形式 説明
FE 17 cpblk あるメモリ ブロックから別のメモリ ブロックにデータをコピーします。

スタック遷移の動作は、順番に次のようになります。

  1. 宛先アドレスがスタックにプッシュされます。

  2. ソース アドレスがスタックにプッシュされます。

  3. コピーするバイト数がスタックにプッシュされます。

  4. バイト数、送信元アドレス、および宛先アドレスがスタックからポップされます。指定したバイト数は、送信元アドレスから宛先アドレスにコピーされます。

命令はcpblk、ソース アドレス (型 、、または &) のバイト数 (型unsigned int32) を宛先アドレス (型 **native intnative int、、または &) にコピーします。 の動作 cpblk は、ソース領域と宛先領域が重なる場合は指定されません。

cpblk は、送信元アドレスと宛先アドレスの両方がマシンの自然なサイズに揃っていることを前提としています。 命令の cpblk 直前に 命令を unaligned.<prefix> 付けて、ソースまたは宛先が整列されていないことを示すことができます。

命令の cpblk 操作は、直前 Volatile または Unaligned プレフィックス命令によって変更できます。

NullReferenceException は、無効なアドレスが検出された場合にスローされる可能性があります。

Emit のメソッド オーバーロードでは、オペコードを cpblk 使用できます。

適用対象