何移位
shl/sal语句是完全等价的:在右侧补0;
shr 也即 Shift Logical Right,好傻逼的简写,在左侧补0。
sar 也即 Shift Arithmetic Right,保留符号。
C语言中,处理unsigned类型对应逻辑移位,处理signed类型对应算术移位。
CF被设置为被移出的**最后一位**。
OF仅在移1位时有意义。左移后若改变符号,OF=1,反之OF=0;SAR后OF=0;SHR后OF被置为移位前的最高位。
一二三 跳!
signed比大小 使用greater&less
jg(jnle) 大于
jge(jnl) 大于等于
jl (jnge) 小于
jle(jng) 小于等于
unsigned比大小 使用above/below
ja(jnbe) 大于
jae(jnb) 大于等于
jb(jnae) 小于
jbe(jna) 小于等于
直接读取ZF/SF
je ZF=0
jne ZF!=0
js SF=0
jns SF!=0