trunc_sat_f32x4_s: Wasm SIMD Konvertierungsanweisung
Die trunc_sat_f32x4_s SIMD-Konvertierungsanweisung führt eine saturierende Umwandlung der Lanes (Spuren) einer v128 f32x4 Wertinterpretation in eine signierte i32x4 Wertinterpretation durch, wobei die Ausgabe auf den Bereich beschränkt wird, der durch den Werttyp erlaubt ist.
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 beschränkt werden, die durch die Wertinterpretation erlaubt sind. Erlaubte Ausgabewerte reichen von −2,147,483,648 bis 2,147,483,647 (der volle Bereich eines signierten 32-Bit-Integer). NaN-Werte werden in 0 umgewandelt.
Syntax
value_type.trunc_sat_f32x4_s
value_type-
Der Werttyp, auf dem die Anweisung ausgeführt wird. Die folgenden
v128Wertinterpretationen unterstützentrunc_sat_f32x4_s:i32x4
trunc_sat_f32x4_s-
Die
trunc_sat_f32x4_sAnweisung. Muss immer nach demvalue_typeund einem Punkt (.) angegeben werden.
Typ
[input] -> [output]
Binäre Kodierung
| Anweisung | Binärformat | Beispieltext => binär |
|---|---|---|
i32x4.trunc_sat_f32x4_s |
0xfd 248:u32 |
i32x4.trunc_sat_f32x4_s => 0xfd 0xf8 0x01 |