arithmetic shift(算术移位):在二进制位运算中,把一个整数的二进制位整体向左或向右移动。与逻辑移位不同,右移时通常会用原来的符号位(最高位)来填补空出来的高位,以尽量保持有符号整数的正负号与数量级特征(常见于补码表示)。
(此术语也常写作 arithmetic shift;你给出的 arithmetic-shift 属于连字符写法。)
/ˌærɪθˈmɛtɪk ʃɪft/
An arithmetic shift right keeps the sign bit.
算术右移会保留符号位。
In two’s complement, an arithmetic shift right by one bit is often similar to dividing by 2, though negative odd numbers can behave differently.
在二进制补码中,算术右移 1 位通常类似于除以 2,但对负的奇数可能会出现不完全相同的结果。
arithmetic 源自希腊语 arithmētikē(与“数字/计算”相关),shift 来自古英语 sciftan(意为“移动、转换”)。合在一起,arithmetic shift 指“用于数值(尤其是有符号整数)计算语境的移位方式”,强调它与数值符号处理有关。