一、OUTx 在一个I/O的地址上写数据,关键字"a"表示,要在这条asm语句执行前,就把val的值放到eax寄存器中;关键字"Nd“表示,允许一个字节的常量值可以被汇编称为一个常量,这样就释放了edx让其他程序使用。 static inline void outb(uint16_t port, uint8_t val) { asm volatile ( "outb %0, %1" : : "a"(val)