截断(浮点数到整数)
trunc
指令用于将浮点数转换为整数。它之所以被称为截断,是因为在进行转换时它会截断数字的小数部分。此指令有带符号和无符号版本。
还有另一个trunc
指令,它会截断浮点数的小数部分,而不会将其转换为整数。
试试看
语法
wasm
;; push an f32 onto the stack
f32.const 10.5
;; convert from f32 to signed i32 rounding towards zero (.5 will be lost)
i32.trunc_f32_s
;; the top item on the stack will now be the value 10 of type f32
指令 | 二进制操作码 |
---|---|
i32.trunc_f32_s |
0xa8 |
i32.trunc_f32_u |
0xa9 |
i32.trunc_f64_s |
0xaa |
i32.trunc_f64_u |
0xab |
i64.trunc_f32_s |
0xae |
i64.trunc_f32_u |
0xaf |
i64.trunc_f64_s |
0xb0 |
i64.trunc_f64_u |
0xb1 |