copy: Wasm-Textanweisung
Limited availability
This feature is not Baseline because it does not work in some of the most widely-used browsers.
Die copy
Speicheranweisung kopiert Daten von einem Bereich eines Speichers zu einem anderen.
Die Anweisung gibt keinen Wert zurück. Wenn entweder die Quell- oder Zielbereich außerhalb der Grenzen liegt, löst die Anweisung eine Falle aus.
Syntax
Kopieren innerhalb des Standard-Speichers
;; Copy data in default memory from [100, 125] to [50, 75]
i32.const 50 ;; Destination address to copy to
i32.const 100 ;; Source address to copy from
i32.const 25 ;; Number of bytes to copy
memory.copy ;; Copy memory
;; Copy in default memory using an S-function
(memory.copy (i32.const 50) (i32.const 100) (i32.const 25))
Kopieren des angegebenen Speichers (wenn Multi-Speicher unterstützt wird)
;; Copy data in specific memory [100, 125] to [50, 75]
i32.const 50 ;; Destination address to copy to
i32.const 100 ;; Source address to copy from
i32.const 25 ;; Number of bytes to copy
memory.copy (memory 2) ;; Copy memory within memory with index 2
;; Copy within memory referenced by its name
i32.const 50 ;; Destination address to copy to
i32.const 100 ;; Source address to copy from
i32.const 25 ;; Number of bytes to copy
memory.copy (memory $memoryName) ;; Copy memory with memory named "$memoryName"
;; Copy same memory using an S function
(memory.copy (memory $memoryName) (i32.const 50) (i32.const 100) (i32.const 25))
Anweisungen und Opcodes
Anweisung | Binäroperation |
---|---|
memory.copy |
0xFC 0x0a |
Spezifikationen
Specification |
---|
Unknown specification # syntax-instr-memory |
Browser-Kompatibilität
BCD tables only load in the browser
Hinweis:
Die Speicherunterstützung in Wasm-Modulen entspricht der WebAssembly.Memory
JavaScript-API.
Der Schlüssel multiMemory gibt Versionen an, in denen copy
mit einem angegebenen Speicher verwendet werden kann.