1、位扫描指令(Bit ScanInstruction)
指令的格式:BSF/BSR Reg, Reg/Mem ;80386+
受影响的标志位:ZF
位扫描指令是在第二个操作数中找第一个“1”的位置。如果找到,则该“1”的位置保存在第一操作数中,并置标志位ZF为1,否则,置标志位ZF为0。
根据位扫描的方向不同,指令分二种:正向扫描指令和逆向扫描指令。
、正向扫描指令BSF(BitScan Forward)从右向左扫描,即:从低位向高位扫描;
、逆向扫描指令BSR(BitScan Reverse)从左向右扫描,即:从高位向低位扫描。
(a) BSF | (b) BSR | ||
图5.10 位扫描指令的功能示意图 |
例如:
MOV AX, 1234H
BSF CX, AX ;指令执行后,(CX)=2
BSR CX, AX ;指令执行后,(CX)=12