饱和运算

饱和运算(saturation arithmetic),即当运算结果大于某上限或小于某下限时,其运算结果为该上限或下限的一种运算方式。

比方说,当运算范围为 [0, 255] 时:

  • 100 + 200 的结果为255,而非300;
  • 100 - 200 的结果为0,而非-100;
  • 因此,(100 + 50) + (100 - 200) 首先会被计算成150 + 0,最终计算得出的结果为150,而非50;
  • 若重新排列上述算式,使其成为 (100 + 100) + (50 - 200),其计算结果则为200。
  • 此外,3(150 - 50) 的结果为255,非300。
  • 而与此同时 3(150) - 3(50) 的结果为105,非300。

综上所述,使用饱和运算时,结合律与分配律存在着失效的可能性。

用途
由于使用饱和运算容易导致结合律以及分配律失效,这种运算并不常见于抽象数学领域,但在数字电路中广泛使用。

评论 (0)

  • 还没有评论,来抢沙发吧。