In this guide, we’ll dive into WebAssembly’s core instructions (the verbs) and data types (the nouns) that power efficient, predictable execution in browsers and other WASM runtimes. By mastering these fundamentals, you can write low-level modules that perform reliably across platforms.Documentation Index
Fetch the complete documentation index at: https://notes.kodekloud.com/llms.txt
Use this file to discover all available pages before exploring further.
WebAssembly Instructions
WebAssembly instructions are low-level opcodes executed by the WASM virtual machine. Because they resemble machine code more than high-level languages, browsers can optimize them aggressively for speed.Basic Arithmetic Examples
i32.add‒ adds two 32-bit integersf64.sub‒ subtracts one 64-bit float from another
Always verify operand types before invoking an instruction. WebAssembly performs no implicit conversions and will trap on type mismatches.
WebAssembly Data Types
Choosing the right data type in WebAssembly ensures efficient memory usage and accurate calculations. For instance, consider a web app that displays two temperature readings:- 25 °C (an integer)
- 25.5 °C (a decimal)
- 25 °C →
i32 - 25.5 °C →
f64

| Data Type | Size & Kind | Use Case |
|---|---|---|
i32 | 32-bit integer | Counters, array indices |
i64 | 64-bit integer | High-precision integer math |
f32 | 32-bit floating point | Graphics, simple physics |
f64 | 64-bit floating point | Scientific calculations, audio DSP |
v128 | 128-bit SIMD vector | Parallel data processing |
funcref | Reference to a function | Indirect calls, function tables |
externref | Reference to external value | Interop with host (e.g., JavaScript) |
