原码的算数移位运算:
反码和补码的算数移位运算:
逻辑移位将操作数视为无符号数,移位规则:逻辑左移时,高位移丢,低位添0;逻辑右移时,低位移丢,高位添0。
注意:
逻辑移位不管是左移还是右移,都添0。
比如循环左移:
带进位位的循环左移:
示例:
判断方法1:采用一位符号位
判断方法2:采用双符号位(最常用)
真实的符号位指的是原来参与运算的数字的符号位,因为只有同号才会溢出
判断方法3:采用一位符号位
这里的符号位指的是原来参与运算的数字的符号位,因为只有同号才会溢出
在计算机算术运算中,有时必须把采用给定位数表示的数转换成具有不同位数的某种表示形式。例如,某个程序需要将一个8位数与另外一个32位数相加,要想得到正确的结果,在将8位数与32位数相加之前,必须将8位数转换成32位数形式,这称为“符号扩展”。