DSP

定点运算(一) - 移位运算

2019-07-13 12:05发布

移位: 为什么要移位? 在计算机里面, 移位操作可以与加减法操作一起构成乘除法运算。 注意:因为计算机里面没有专门的硬件来表示小数点, 小数点是人为约定的; 这就说明小数点的位置是不可变的。即移位操作动的是数据而不是小数点。 移位的规则: 符号位不变, 因为负数移位之后还是负数, 不可能因为一个移位就变成正数了, 下面是具体添补代码: 主要讲一下补码的添补: 举下面这个例子, 因为文本的不怎么好写就换成图片了。 算术移位和逻辑移位的区别: 算术移位:有符号数的移位。 逻辑移位:没有符号数的移位。(移位的时候所有数据都要移) 从上面的定义可知:前面说的都是算数移位。 为了记录最高位移掉的数, 在移位时可以使用带进位的移位。 将移掉的最高位可以移动到进位中, 但是进位也只能保持一 位数。