Linux環境でNasmとGNUCインラインasmを扱ってきましたが、この機能はうまく機能しました...しかし、今はWindows環境に切り替えており、Masm(VS2008で)を使用したいのですが、取得できないようです。これが機能する...
void outportb (unsigned short _port, unsigned short _data)
{
__asm__ __volatile__ ("outb %1, %0" : : "dN" (_port), "a" (_data));
}
私がこのようなものを書くとき...
void outportb (unsigned short _port, unsigned short _data)
{
asm volatile ("outb %1, %0" : : "dN" (_port), "a" (_data));
}
asmが認識されなくなり、volatileが「string」というエラーをスローします。_asmvolatileを書き込もうとしましたが、「「opcode」にインラインアセンブラ構文エラーがあります。「datatype」が見つかりました」というエラーが表示されます。