硬件控制方法

有一句挺经典的话:计算机离开软件就是一个盒子。没错,如果没有软件的支持,一堆硬件毫无用处,那么硬件软件是如何协调工作,下面我们就来说这个话题。

首先我们来了解一下支撑硬件输入输出的IN指令和OUT指令:
IN指令:通过指定端口号的端口输入数据,并将其存储在CPU内部的寄存器中。
OUT指令:把寄存器中存储的数据,输出到指定的端口。

好了,如果你不清楚端口的具体定义,那么肯定会和我有一样的疑惑:端口是怎么接受数据的保存数据的?

接下来,我们来深究一下端口号和端口到底是什么。计算机中附带了用来连接计算机主机同外围设备的连接器,连接器内部有用来交换计算机主机同同外围设备之间电流特性的IC,这些IC统称为I/O控制器,为什么需要这个控制器,因为一堆乱七八槽的设备都往主机上连接,那不要累死主机,所以就统一一下,统一连接控制器,方面转换各种电流特性。相当于一个电压适配器。

I/O控制器中有用于临时保存输入输出数据的内存,这个内存就是端口,port,“港口”,货物中转站,因此而得名。
这个内存主要用来存储数据。

这个控制器要控制一大堆端口,这些端口怎么来区分呢?就是用端口号进行区分,IN和OUT指令通过指定端口号和CPU进行数据交换。

在这一章里面还有一个有意思的内容,那就是中断控制器,当一个正在进行中的程序因为某种原因被中断时,计算机会及时将寄存器中的内容存入内存的栈中,然后继续执行当前程序,当执行完毕后CPU再栈中取出数据,还原现场,继续进行中断之前的程序。

好了,这一节主要就是让我们了解端口号,端口,及中断时候的机制。内容不多,容易理解,想深入了解的童鞋自行看书补充。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Windows中,使用C语言等高级编程语言时,很少有能直接控制硬件的指令,因为对硬件的控制是由Windows操作系...
    墨白找阅读 4,386评论 0 0
  • 8086汇编 本笔记是笔者观看小甲鱼老师(鱼C论坛)《零基础入门学习汇编语言》系列视频的笔记,在此感谢他和像他一样...
    Gibbs基阅读 37,731评论 8 114
  • 名词延伸 通俗的说,域名就相当于一个家庭的门牌号码,别人通过这个号码可以很容易的找到你。如果把IP地址比作一间房子...
    杨大虾阅读 20,698评论 2 56
  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,828评论 19 139
  • 尊严 或许是让自己活的更理直气壮 卑微 那都是自己给自己种下的苦果 阳光 温暖人心,让人灿烂,让人欢乐 阴暗 迷茫...
    490826ff7d85阅读 1,481评论 0 0

友情链接更多精彩内容