Freigeben über


OpCodes.Cpblk-Feld

Kopiert eine angegebene Anzahl von Bytes von einer Quelladresse an eine Zieladresse.

Namespace: System.Reflection.Emit
Assembly: mscorlib (in mscorlib.dll)

Syntax

'Declaration
Public Shared ReadOnly Cpblk As OpCode
'Usage
Dim value As OpCode

value = OpCodes.Cpblk
public static readonly OpCode Cpblk
public:
static initonly OpCode Cpblk
public static final OpCode Cpblk
public static final var Cpblk : OpCode

Hinweise

In der folgenden Tabelle werden das hexadezimale und das Assemblyformat der MSIL (Microsoft Intermediate Language) jeweils mit einer Kurzreferenz aufgeführt:

Format

Assemblyformat

Beschreibung

FE 17

cpblk

Kopiert Daten aus einem Speicherblock in einen anderen.

Im Stapel laufen die folgenden Aktionen in der angegebenen Reihenfolge ab:

  1. Die Zieladresse wird auf dem Stapel abgelegt.

  2. Die Quelladresse wird auf dem Stapel abgelegt.

  3. Die Anzahl der zu kopierenden Bytes wird auf dem Stapel abgelegt.

  4. Die Anzahl von Bytes, die Quelladresse und die Zieladresse werden vom Stapel geholt. Die angegebene Anzahl von Bytes wird von der Quelladresse an die Zieladresse kopiert.

Die cpblk-Anweisung kopiert eine Anzahl (Typ unsigned int32) von Bytes von einer Quelladresse (Typ *, natural int oder &) an eine Zieladresse (Typ *, natural int oder &). Wenn sich Quell- und Zielbereich überlappen, ist das Verhalten von cpblk undefiniert.

cpblk geht davon aus, dass die Quell- und Zieladresse an die Größe des Computers angepasst sind. Der cpblk-Anweisung kann unmittelbar die unaligned.<prefix>-Anweisung vorausgehen, um anzugeben, dass das Ziel oder die Quelle nicht angepasst ist.

Die Funktionsweise der cpblk-Anweisung kann geändert werden, indem dieser die Volatile-Präfixanweisung oder die Unaligned-Präfixanweisung unmittelbar vorangestellt wird.

Wenn eine ungültige Adresse erkannt wird, kann eine NullReferenceException ausgelöst werden.

Die folgende Überladung der Emit-Methode verwendet den cpblk-Opcode:

  • ILGenerator.Emit(OpCode)

Plattformen

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

Siehe auch

Referenz

OpCodes-Klasse
OpCodes-Member
System.Reflection.Emit-Namespace