单选题
下列关于各种移位的说法正确的是______。
Ⅰ.假设机器数采用反码表示,当机器数为负时,左移时最高数位丢0,结果出错;右移时最低数位丢0,影响精度
Ⅱ.在算术移位的情况下,补码左移的前提条件是其原最高有效位与原符号位要相同
Ⅲ.在算术移位的情况下,双符号位的移位操作只有低符号位需要参加移位操作
【正确答案】
D
【答案解析】[解析] Ⅰ、Ⅱ、Ⅲ都是正确的。
Ⅰ反码表示整数时末位0为奇数,右移会减小精度,如5位反码11010表示-5。右移1位变为11101为-2,数据丢失。
Ⅱ反码:左移右移都补0,而补码右移补位与符号位相关,无论是补码还是反码,左移移走的最高位都要与符号位相同。
Ⅲ为了防止左移操作造成溢出,补码的左移需要一个前提条件,即其原最高有效位需要与符号位相同。