2.5逻辑右移和算术右移的区别
当二进制数的值表示 图形模式而非数值时,移位后需要在最高位补0.这就称为逻辑右移(如2-9)。
将二进制数作为带符号的数值进行运算时,位移后要在最高位填充移位前符号位的值(0或1)。这称为算术右移。
只有在右移时才必须区分逻辑位移和算术位移。左移时,无论是图形模式(逻辑左移)还是相乘运算(算术左移),都只需在空出来的低位补0即可。
符号扩充就是指在保持值不变的前提下将其转换成16位和32位的二进制数。
当二进制数的值表示 图形模式而非数值时,移位后需要在最高位补0.这就称为逻辑右移(如2-9)。
将二进制数作为带符号的数值进行运算时,位移后要在最高位填充移位前符号位的值(0或1)。这称为算术右移。
只有在右移时才必须区分逻辑位移和算术位移。左移时,无论是图形模式(逻辑左移)还是相乘运算(算术左移),都只需在空出来的低位补0即可。
符号扩充就是指在保持值不变的前提下将其转换成16位和32位的二进制数。