find_first_zero.h
来自「阿基米德操作系统的源代码」· C头文件 代码 · 共 23 行
H
23 行
///////////////////////////////////////////////////////////////////////////
#define find_first_zero(addr) ({ \ int __res; \ __asm__("cld\n" \ "1:\tlodsl\n\t" \ "notl %%eax\n\t" \ "bsfl %%eax,%%edx\n\t" \ "je 2f\n\t" \ "addl %%edx,%%ecx\n\t" \ "jmp 3f\n" \ "2:\taddl $32,%%ecx\n\t" \ "cmpl $8192,%%ecx\n\t" \ "jb 1b\n" \ "3:" \ :"=c" (__res) \
:"c" (0),"S" (addr)); \ __res;})
///////////////////////////////////////////////////////////////////////////
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?