我想“OUTB”的端口,但我不断收到:数类型不匹配的'出”Outputing到通用端口使用OUTB在AT&T汇编语法:让操作mistatch
下面是代码:
outb %al, %bl
如果我用任何8位寄存器(%ah,%bh,%bl,...)代替%bl,我仍然会得到相同的错误。
如果我硬编码的端口号码,那么代码工作。
如何写通用方法(在汇编中)写入到作为参数传递的端口?
下面的代码似乎在C工作,但我真的不明白为什么和如何:
asm volatile ("outb %0, %w1" : : "a"(val), "Nd"(port));
谢谢
实际上,我们更喜欢像“谢谢你“不会出现在帖子的任何位置,因为他们不会添加任何有用的信息。 –