例如
100110
我要第 4位 即是 0
有没有这样的一条指令呢?
我看了看手册,里面只有 BT 比较适合
但是都是把它拿到CF去.
我还有使用ADC之类的指令才能拿出来.有没有其他更好的指令呢?
------解决方案--------------------------------------------------------
你想把位拿到哪里去?bt很适合鸟
------解决方案--------------------------------------------------------
可以用TEST+SETcc指令。
xor ecx,ecx
test eax,8 ; 测试bit4
setnz cl ; 结果在cl/cx/ecx中
------解决方案--------------------------------------------------------
你这样要获得确切的某一位也是要三条指令的,而且BT+ADC更慢。
------解决方案--------------------------------------------------------
汇编版区好冷清啊,来学习了
------解决方案--------------------------------------------------------
用经典指令做也可以的额,如下:
mov al,00100110b
and al,00001000b
shr al,3
没必要用复杂的指令.
这里就只用了一个寄存器.够节约寄存器的了.
------解决方案--------------------------------------------------------
------解决方案--------------------------------------------------------