SIMD.subSaturate
SIMD.subSaturate
SIMD.js已经从TC39中取消了积极的开发并从第3阶段中删除了。并不再被网页浏览器所追求。SIMAs操作暴露于Web,正在WebAssembly中进行积极的开发,其操作基于SIMD.js操作。
静态SIMD.%type%.subSaturate()
方法返回一个新的实例,其中减去通道值(a - b
)和溢出时的饱和行为。
注意:此操作不上定义Uint32x4
和Int32x4
,因为它不是由当前硬件上的这些类型的加速。
句法
SIMD.Int8x16.subSaturate(a, b)
SIMD.Int16x8.subSaturate(a, b)
SIMD.Uint8x16.subSaturate(a, b)
SIMD.Uint16x8.subSaturate(a, b)
参数
a SIMD类型的实例。b
SIMD类型的另一个实例。
返回值
一个新的相应的SIMD数据类型,车道值为a
和b
减(a - b
)。
例子
以下示例演示了Uint16(最大值65535,最小值0)和Int16(最大值32767,最小值-32678)的饱和行为。如果减法溢出,通道将具有最小/最大可能值。
var a = SIMD.Uint16x8(5, 1, 1, 1, 1, 1, 1, 1
var b = SIMD.Uint16x8(10, 1, 1, 1, 1, 1, 1, 1
SIMD.Uint16x8.subSaturate(a, b
// Uint16x8[0, 0, 0, 0, 0, 0, 0, 0]
var c = SIMD.Int16x8(-100, 0, 0, 0, 0, 0, 0, 0
var d = SIMD.Int16x8(32767, 0, 0, 0, 0, 0, 0, 0
SIMD.Int16x8.subSaturate(c, d
// Int16x8[-32768, 0, 0, 0, 0, 0, 0, 0, 0]
规范
Specification | Status | Comment |
---|---|---|
SIMDThe definition of 'SIMDConstructor.subSaturate' in that specification. | Draft | Initial definition. |
浏览器兼容性
Feature | Chrome | Firefox (Gecko) | Internet Explorer | Opera | Safari |
---|---|---|---|---|---|
Basic support | No support | Nightly build | No support | No support | No support |
Feature | Android | Chrome for Android | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Basic support | No support | No support | Nightly build | No support | No support | No support |