嵌入如汇编程序规定把输出和输入寄存器统一按顺序编号,顺序是从输出寄存器序列从左到右从上到下以“%0”开始,分别记为%0,、%1、。。。%9。因此下面的中的%4对应“1”(0),而“1”(0)有对应“=d”(__res)
#define do_div(n,base)({\
int __res;\
__asm__("divl %4":"=a"(n),"=d"(_res):"0"(n),"1"(0),"r"(base));\
__res;})
嵌入如汇编程序规定把输出和输入寄存器统一按顺序编号,顺序是从输出寄存器序列从左到右从上到下以“%0”开始,分别记为%0,、%1、。。。%9。因此下面的中的%4对应“1”(0),而“1”(0)有对应“=d”(__res)
#define do_div(n,base)({\
int __res;\
__asm__("divl %4":"=a"(n),"=d"(_res):"0"(n),"1"(0),"r"(base));\
__res;})