2011-01-19 192 views
2

使用内联汇编程序,我可以按如下方式指定具有 两个输入和一个结果添加操作:内联汇编问题

int a = 5; 
int b = 5; 
int res; 

asm volatile (
" add %1, %2, %0   \n\t" 
: "=r" (res)    
: "r" (a), "r" (b)  
: "%g0"             
); 

在32位架构,这将产生我可能看起来像 ,一个指令字这个:0x91050101

现在我想知道,而不是明确指定加法的汇编代码, 我想立即指定指令字并将其放入可执行文件。这应该是这个样子这里

asm volatile (%x91, %x05, %x01, %x01); 

任何一个想法,我在哪里可以找到更多的信息怎么可以这样做,以及如何,语法上有看起来像做(以上只是胡乱猜测)。

非常感谢!

回答