1. WebAssembly
  2. Reference
  3. WebAssembly numerische Anweisungen
  4. wrap_i64

Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

wrap_i64: Wasm Textanweisung

Die wrap_i64-Anweisung wird verwendet, um Zahlen vom Typ i64 in den Typ i32 zu konvertieren. Wenn die Zahl größer ist, als ein i32 aufnehmen kann, wird diese Operation die Zahl umwickeln, was zu einem anderen Wert führt.

Man kann sich das Umwickeln entweder als Reduzierung des Wertes mod 232 vorstellen, oder als das Verwerfen der oberen 32 Bits, um einen Wert zu erhalten, der nur die unteren 32 Bits enthält.

Probieren Sie es aus

(module
 (import "console" "log" (func $log (param i32)))
 (func $main
 i64.const 10 ;; push an i64 onto the stack
 i32.wrap_i64 ;; wrap from i64 to i32
 call $log ;; log the result
 )
 (start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });

Syntax

wat
;; push an i64 onto the stack
i64.const 10
;; wrap from i64 to i32
i32.wrap_i64
;; the top item on the stack will now be the value 10 of type `i32`
Anweisung Binärer Opcode
i32.wrap_i64 0xa7

Help improve MDN

Erfahren Sie, wie Sie beitragen können Diese Seite wurde automatisch aus dem Englischen übersetzt.

AltStyle によって変換されたページ (->オリジナル) /