SIMD.subSaturate

SIMD.subSaturate

SIMD.js已经从TC39中取消了积极的开发并从第3阶段中删除了。并不再被网页浏览器所追求。SIMAs操作暴露于Web,正在WebAssembly中进行积极的开发,其操作基于SIMD.js操作。

静态SIMD.%type%.subSaturate()方法返回一个新的实例,其中减去通道值(a - b)和溢出时的饱和行为。

注意:此操作不上定义Uint32x4Int32x4,因为它不是由当前硬件上的这些类型的加速。

句法

SIMD.Int8x16.subSaturate(a, b) SIMD.Int16x8.subSaturate(a, b) SIMD.Uint8x16.subSaturate(a, b) SIMD.Uint16x8.subSaturate(a, b)

参数

a SIMD类型的实例。bSIMD类型的另一个实例。

返回值

一个新的相应的SIMD数据类型,车道值为ab减(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]

规范

SpecificationStatusComment
SIMDThe definition of 'SIMDConstructor.subSaturate' in that specification.DraftInitial definition.

浏览器兼容性

FeatureChromeFirefox (Gecko)Internet ExplorerOperaSafari
Basic supportNo supportNightly buildNo supportNo supportNo support

FeatureAndroidChrome for AndroidFirefox Mobile (Gecko)IE MobileOpera MobileSafari Mobile
Basic supportNo supportNo supportNightly buildNo supportNo supportNo support