trunc_sat_f32x4_s: Wasm SIMD-Konvertierungsanweisung
Die trunc_sat_f32x4_s SIMD-Konvertierungsanweisung führt eine saturierende Konvertierung der Kanäle einer v128 f32x4-Wertinterpretation in eine signierte i32x4-Wertinterpretation durch und klemmt die Ausgabe in den durch den Werttyp erlaubten Bereich.
Probieren Sie es aus
(module
(import "console" "log" (func $log (param i32)))
(func $main
v128.const f32x4 1300.5 60.4 0.5 780000.4
i32x4.trunc_sat_f32x4_s
i32x4.extract_lane 2
call $log ;; log the result
)
(start $main)
)
WebAssembly.instantiateStreaming(fetch("{%wasm-url%}"), { console });
Sättigung bedeutet, dass die Ausgabewerte auf die oberen und unteren Werte begrenzt werden, die durch die Wertinterpretation erlaubt sind. Erlaubte Ausgabewerte liegen im Bereich von −2.147.483.648 bis 2.147.483.647 (der vollständige Bereich eines signierten 32-Bit-Integer). NaN-Werte werden in 0 konvertiert.
Syntax
value_type.trunc_sat_f32x4_s
value_type-
Der Werttyp, auf dem die Anweisung ausgeführt wird. Die folgenden
v128-Wertinterpretationen unterstützentrunc_sat_f32x4_s:i32x4
trunc_sat_f32x4_s-
Die
trunc_sat_f32x4_s-Anweisung. Muss immer nach demvalue_typeund einem Punkt (.) erscheinen.
Typ
[input] -> [output]
Binärcodierung
| Anweisung | Binärformat | Beispieltext => Binär |
|---|---|---|
i32x4.trunc_sat_f32x4_s |
0xfd 248:u32 |
i32x4.trunc_sat_f32x4_s => 0xfd 0xf8 0x01 |
Spezifikationen
| Spezifikation |
|---|
| WebAssembly Core Specification> # vector-instructions%E2%91%A8> |