如何在Linux中添加汇编代码

2 linux assembly kernel

我正在Fedora core 6上编写Linux内核模块,我想知道是否有人可以告诉我如何将下面显示的汇编代码添加到我的程序中.汇编代码是为Windows编写的,我不知道如何转换为Linux内核程序.

#ifdef _MSC_VER

unsigned char lookKbits(char k)
{
    _asm {
        mov dl, k
        mov cl, 16
        sub cl, dl
        mov eax, [wordval]
        shr eax, cl
    }
}

unsigned char WORD_hi_lo(char byte_high, char byte_low)
{
    _asm {
        mov ah,byte_high
        mov al,byte_low
    }
}

#endif
Run Code Online (Sandbox Code Playgroud)

Ste*_*hen 6

GCC内联汇编Howto

如果您只是在寻找语法:

基本内联汇编的格式非常简单.它的基本形式是

asm("汇编代码");

示例:asm("movl%ecx%eax");/*将ecx的内容移动到eax*/

具体来说,请看第3节,它将英特尔与AT&T语法进行比较.