1. WebAssembly
  2. Reference
  3. WebAssembly SIMD-spezifische Anweisungen
  4. Arithmetic instructions
  5. pmin

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

View in English Always switch to English

pmin: Wasm SIMD Arithmetische Anweisung

Die pmin Anweisung vergleicht zwei Gleitkomma-Wertinterpretationen von v128 und gibt eine neue Interpretation zurück, bei der jede Ausgabelane auf den kleineren der entsprechenden Eingabelanes gesetzt wird. Sie ist definiert als b < a ? b : a, was bedeutet, dass NaN im ersten Operand in die Ausgabe propagiert, aber NaN im zweiten Operand nicht — im Gegensatz zu min, das NaN von beiden Operanden propagiert.

Probieren Sie es aus

(module
 (import "console" "log" (func $log (param f32)))
 (func $main
 ;; load two v128 f32x4s onto the stack
 v128.const f32x4 52.6 101.2 78.0 9.9
 v128.const f32x4 51.9 102.0 78.1 -0.9
 ;; return a f32x4 containing the smallest values from each input lane
 f32x4.pmin
 f32x4.extract_lane 3 ;; Extract a single lane
 call $log ;; log the result
 )
 (start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });

Syntax

value_type.pmin
value_type

Der Typ des Wertes, auf dem die Anweisung ausgeführt wird. Die folgenden Typen unterstützen pmin:

  • f32x4
  • f64x2
pmin

Die pmin Anweisung. Muss immer nach dem value_type und einem Punkt (.) stehen.

Typ

[input1, input2] -> [output]
input1

Der erste Eingabewert.

input2

Der zweite Eingabewert.

output

Der Ausgabewert.

Binärkodierung

Anweisung Binärformat Beispieltext => binär
f32x4.pmin 0xfd 234:u32 f32x4.pmin => 0xfd 0xea 0x01
f64x2.pmin 0xfd 246:u32 f64x2.pmin => 0xfd 0xf6 0x01

Siehe auch

Help improve MDN

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

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