Subtraction

The sub instructions, short for subtraction, are used for subtracting one number from another number, similar to the - operator in other languages.

Try it

(module
  (import "console" "log" (func $log (param i32)))
  (func $main
    ;; load `10` and `3` onto the stack
    i32.const 10
    i32.const 3

    i32.sub ;; subtract on number from the other
    call $log ;; log the result
  )
  (start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });

Syntax

wat
;; load two numbers onto the stack
i32.const 10
i32.const 3

;; subtract one number from the other
i32.sub

;; the top item on the stack will now be 7 (10 - 3 = 7)
Instruction Binary opcode
i32.sub 0x6b
i64.sub 0x7d
f32.sub 0x93
f64.sub 0xa1