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

View in English Always switch to English

f32: Wasm-Typ

Der f32-Werttyp hält einen 32-Bit-Gleitkommawert mit einfacher Genauigkeit.

Syntax

wat
;; Function returning an f32 constant
(func (result f32)
  f32.const 3.14)

;; f32 parameter and local
(func (param $p f32) (local $tmp f32)
  ;; ...
)

;; Mutable f32 global
(global $ratio (mut f32) (f32.const 1.0))

Beschreibung

f32-Werte folgen dem IEEE 754 binary32 (Einzelpräzision) Format: ein Vorzeichenbit, acht Exponentenbits und dreiundzwanzig Signifikantenbits. Sie umfassen ungefähr sieben Dezimalstellen der Genauigkeit über den Bereich ±3,4 × 10³⁸, plus die Sonderwerte ±0, ±∞ und NaN.

Arithmetische Anweisungen (f32.add, f32.mul und so weiter) folgen dem Round-to-Nearest-Ties-to-Even-Semantik von IEEE 754. Das genaue Bitmuster eines durch Arithmetik erzeugten NaN ist nicht deterministisch, daher sollten Sie sich nicht darauf verlassen, dass spezifische NaN-Payloads zwischen Implementierungen oder Architekturen gleich sind.

f32 ist transparent: Sein Bitmuster ist beobachtbar, und f32-Werte können im linearer Speicher gespeichert werden. f32.reinterpret_i32 und seine Umkehrung ermöglichen es Ihnen, Bits zwischen f32 und i32 ohne Umwandlung zu verschieben.

JavaScript-Grenze

f32-Werte überqueren die JavaScript-Grenze als JavaScript-Number-Werte. Werte aus JavaScript werden auf den nächsten darstellbaren f32 gerundet.

Spezifikationen

Spezifikation
Unknown specification
# syntax-numtype

Siehe auch