摘要:
IRQ是用来暂停当前正在运行的程序,并跳转到其他程序运行的必要机制。该机制称为中断处理。中断处理在硬件控制中担当着重要角色。因为如果没有中断处理,就有可能出现无法顺畅进行的情况。 从中断处理开始到请求中断的程序(中断处理程序)运行结束之前,被中断的程序(主程序)的处理是停止的。这种情况就类似于在处理 阅读全文
摘要:
由于用汇编语言编写程序比较麻烦,因此这里我们采取再C语言源代码中插入助记符的方式来实现。在大部分C语言的处理(编译器的种类)中,只要使用_asm{和}括起来,就可以在其中记述助记符。也就是说,这样可以编写C语言和汇编语言混合的源代码。这里我们使用微软的VisualC++来作成应用。 在 AT 兼容机 阅读全文
摘要:
Windows控制硬件时借助的是输入输出指令。其中具有代表性的两个输入输出指令就是IN和OUT。这些指令也是汇编语言的助记符。 IN指令和OUT指令的语法如图11-2所示。这是Pentium等x86系列CPU用的IN指令的语法。IN指令通过指定端口号的端口输入数据,并将其存储在CPU内部的寄存器中。 阅读全文
摘要:
在C语言等高级编程语言开发的Windows应用中,大家很少能接触到直接控制硬件的指令。这是因为硬件的控制是由Windows全权负责的。 不过,Windows提供了通过应用来间接控制硬件的方法。利用操作系统提供的系统调用功能就可以实现对硬件的控制。在Windows中,系统调用称为API(图11-1). 阅读全文