回复 10楼 zklhp
我上面说的是基于操作系统,如果没有操作系统可以直接用bios中断,在操作系统上部调用现成的库函数,我想不到其他办法来实现键盘的读和屏幕的写。
即使是无操作系统化,用c语言我觉得很方面。只要用汇编或内联汇编用实现一个调用bios中断的函数,比用汇编要简单的多,也不容易出错得多。
void bios_call(int no, const struct regs *in, struct regs *out)
{
__asm__("int *%8" : "=a"(out->rax), “=b"(out->rbx), "=c"(out->rcx), "=d"(out->rdx)
: "0"(in->rax),
"1"(in->rbx),
"2"(in->rcx),
"3"(in->rdx), "r"(no));
}