SHR
作者:Vesper Vei
1 分钟阅读
目录
SHR(shr)
基本作用
SHR(逻辑右移)将操作数右移 n 位,左侧用 0 填充。
数学意义上为:dest = floor(dest / 2^n)。
指令执行过程
- 右移指定次数
- 左侧补 0
- 更新 CF、ZF、SF、OF
- 最后移出的 bit → CF
指令格式
shr r/m32, imm8shr r/m64, imm8shr r/m32, clshr r/m64, cl行为特性
- 不保留符号 → 不适用于有符号除法
- 对无符号整数常用
- 和 SAR 区别明显(SAR 保留最高位符号)
常见用途
- 快速除以 2^n(无符号)
- Bitmask 清理
- 协议解析中右移字段
- 某些加密/编码算法的补丁点