bsfl汇编指令

导读:
bsfl汇编指令:    
  intel汇编指令:bsf   oprd1,oprd2;    
  顺向位扫描(bit   scan   forward)    
  从右向左(从位0-->位15或位31)扫描字或双字操作数oprd2中第一个含"1"的位,并把扫描到的第一个含'1'的位的位号送操作数oprd1    
  AT&T格式汇编指令bsfl类似bsf,只是源操作数和目的操作数顺序相反。  
   
  比如网上有一个类似语句的分析:  
  .__asm__("bsfl   %1,%0/n/t"    
  "jne   1f/n/t"    
  "movl   $32,   %0/n"    
  "1:"    
  :   "=r"(set)    
  :"r"(~   (*p   >>   bit)));    
   
  进入汇编指令前的初始条件:    
  p:指向offset所指向的起始位所处的那个unsigned   long型4B双字的开始处。    
  bit:   offset所指向的起始位位于所处在的那个unsigned   long型4B双字中的第几位。    
   
  *p   >>   bit   :   将指向offset所指向的起始位所处的那个unsigned   long型4B双字的开始处的指针右移bit位,即:将offset所指向的起始位前面的位全部移出去,而将offset所指向的起始位右移到了最右端(最低位,0位),该起始位成了
  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值