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