Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
In the 64bit mode, The inl & outl instructions will be expanded 64bit input and
output operate.
What instructions to be used 32bit input and output operate?
Does inb&outb always 8 bit input&output operate?
Does inw&outw always 16bit input&output operate?
Thanks
In long mode, you do not get additional 64 bit inputs and outputs - inputs are zero extended to 64 bits and outputs ignore the higher 64 bits of a 64 bit register.
Thank you very much.
I wrote the inline assembler in the C code:
void outl(unsigned short port,unsigned long vaule)
{
__asm__ __volatile__ ( "outl %0,%w1" ::"a"(vaule),"d"(port));
}
But issue error when it's compiled.
that prompted, %0 refers "rax".