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

View in English Always switch to English

load32_lane: Wasm SIMD Lade-/Speicheranweisung

Die load32_lane SIMD Lade-/Speicheranweisung lädt einen einzelnen Wert von einer angegebenen Speicheradresse in die spezifizierte Lane eines v128 Typs i32x4 Wertinterpretation.

Probieren Sie es aus

(module
  (import "console" "log" (func $log (param i32)))
  (memory $memory 1)
  (data (i32.const 0) "\01\02\03\04\05\06\07\08\09\0a\0b\0c\0d\0e\0f\00\01\02\03")
  (func $main
    i32.const 0
    v128.const i32x4 216 830 6 9000
    v128.load32_lane 3
    i32x4.extract_lane 3
    call $log
  )
  (start $main)
)
WebAssembly.instantiateStreaming(fetch("{%wasm-url%}"), { console });

Syntax

;; Common usage
v128.load32_lane lane_value

;; With optional immediate operands
v128.load32_lane mem_idx offset=int align=int lane_value
v128.load32_lane

Die v128.load32_lane Anweisung.

mem_idx Optional

Ein ganzzahliger Wert, der den Speicherindex darstellt, in Fällen, in denen das Modul mehrere Speicher verwendet. Der Standardwert ist 0.

offset=int Optional

Ein ganzzahliger Wert, der eine konstante Anzahl von Bytes darstellt, die zur Speicheradresse hinzugefügt werden, bevor geladen wird. Der Standardwert ist 0.

align=int Optional

Ein ganzzahliger Wert, der der Wasm-Engine einen Hinweis darauf gibt, welche Ausrichtung für die endgültige Adresse erwartet wird. Der Mindestwert ist 1 und der Standard- und Höchstwert ist 4. Ein align Wert muss eine Potenz von 2 sein.

lane_value

Die Lane, in die ein Wert geladen wird.

Typ

[memory_address, input] -> [output]
memory_address

Ein ganzzahliger Wert, der die Speicheradresse darstellt, von der geladen werden soll.

input

Die Eingabe v128 Typ i32x4 Wertinterpretation.

output

Die Ausgabe v128 Typ i32x4 Wertinterpretation.

Binärcode

Anweisung Binärformat Beispiel Text => Binär
v128.load32_lane 0xFD 86:u32 mem_idx:u8 offset:u32 align:u32 lane_idx:u8 v128.load32_lane 0 offset=0 align=4 3 => 0xfd 0x56 0x02 0x00 0x03

Hinweis: Während das Wasm-Textformat den literalen align Wert angibt, repräsentiert das binäre Äquivalent den Exponenten der Formel 2^x, die zur Berechnung der Ausrichtung verwendet wird. So ist beispielsweise align=1 gleichbedeutend mit 0x00 (2^0), während align=4 gleichbedeutend mit 0x02 (2^2) ist.

Spezifikationen

Diese Funktion scheint in keiner Spezifikation definiert zu sein.

Browser-Kompatibilität

Siehe auch