Floor
The floor instructions, are used for getting the value of a number rounded down to the next integer.
floor differs from trunc when used on negative numbers, floor will round down in those cases while trunc will round up.
Try it
(module
(import "console" "log" (func $log (param f32)))
(func $main
f32.const -2.7 ;; load a number onto the stack
f32.floor ;; round down
call $log ;; log the result
)
(start $main)
)
const url = "{%wasm-url%}";
await WebAssembly.instantiateStreaming(fetch(url), { console });
Syntax
wat
;; load a number onto the stack
f32.const -2.7
;; round down
f32.floor
;; the top item on the stack will now be -3
| Instruction | Binary opcode |
|---|---|
f32.floor |
0x8e |
f64.floor |
0x9c |