首页 > 编程语言 >《程序是怎样跑起来的》第11章

《程序是怎样跑起来的》第11章

时间:2024-02-22 16:14:46浏览次数:32  
标签:11 windows 程序 中断请求 硬件 访问 out CPU 怎样

本章主要讲的是访问硬件的方法。在上章中,我们讲述了汇编语言,那么在汇编语言中用于外部数据进行输入输出的命令是什么呢?当然是in指令和out指令。i/o的全称是什么呢?当然是input/output(输入/输出)。那么这里又有些问题,不过这些问题也是清晰易懂的。用于区分外部设备的编号是I/O地址和I/O端口号。IRQ的全称是中断请求(用于区分发出中断请求的外部设备的编号)。 DMA全称是什么直接访问内存。
在计算机中,要想要硬件工作,就一定要有软件。我们在前面几个章节中,也提到要想了解和访问CPU这个硬件,就需要使用编译器或汇编器生成本机代码,再将其加载到内存中运行。那么除了CPU和内存之外的硬件,其他硬件我们该如何访问呢?以前到时听说过,但是没有更深入的了解。
有些人会疑惑,那么应用程序会不会访问硬件呢? 其实在使用高级编程语言编写windows应用程序时,很少会直接访问硬件的指令。这是因为对硬件的访问已经由windows操作系统一起操作了。但是呢,操作系统还是为应用程序提供了间接访问硬件的方法,那就是系统调用,在windows中,系统调用又称之为API。
然而呢,windows 使用硬件输入输出来对硬件进行访问。也就是我们刚刚所讲的in/out。in指的是可以从指定编号输入数据,并将其存入CPU内部的寄存器。out指令是可以将CPU寄存器中的数据输出到指定编号的端口。
书中还给我们讲到外部设备的中断请求,以及通过中断实现实时处理能够快速传输大量数据的DMA,还有显示字符和图像的原理(对显存也有了更加多的了解)。

标签:11,windows,程序,中断请求,硬件,访问,out,CPU,怎样
From: https://www.cnblogs.com/shenchen88-88/p/18027555

相关文章

  • 一般处理程序中的IRequiresSessionState
    一般处理程序中,还未跑入主程序,就直接断掉了,按F12提示错误:异常详细信息:System.Web.HttpException:请求在此上下文中不可用第一次遇见这种情况,百思不得其解,通过与以前的代码对比,发现少了一个接口IRequiresSessionState,加上后可以了!!! 接口的简介:在一般处理程序中,如果要使用Se......
  • 《程序是怎样跑起来的》第七章
    第七章,程序是在何种环境中运行的。7.1节,运行环境=操作系统+硬件即操作系统和硬件决定了程序的运行环境。对源代码进编译就能得到本地代码。7.2节,Windows克服了CPU以外的硬件差异,只要Windows能正常运行,同样的应用在任何机型上都可以运行。Windows操控硬件。7.3节,不同操作系统的......
  • 缓存一梭子, 程序员的快乐就是如此简单
    缓存也是一把梭项目的标配,从业多年,有事无事set/getCache来一梭子。夜深人静的时候,头脑里冷不丁会出现一些问题,我竟一时无法自圆其说。已经有cpu多级缓存、操作系统pagecache,那为什么还需要定义应用缓存?应用的多个副本缓存了同一份数据库数据,怎么保证这些多副本的缓存一致性?......
  • 《程序是怎样跑起来的》——第九章读后感
    一:1.监控程序可以说是操作系统的原型。2文字处理软件、表格处理软件等都瓜于应用醒序。3.应用程序通过系统调用来间接地控制硬件。4.Windows10有32位和64位两种版本。5.可以通过用鼠标点击屏幕上的窗口、图标等可视化方式进行案作的用户界面。6.WYSIWYG的意思是,显示器上显......
  • 程序的运行环境
    应用程序的运行环境可以用操作系统和硬件来表示,而且Windows应用程序不能直接在macOS上运行,PC能安装Windows以外的操作系统,Java虚拟机可以运行编译为字节码的Java程序。引导装入的功能为启动操作系统。一般来说,应用程序的运行环境是操作系统的类型以及硬件的类型和性能指标。只要针......
  • 《程序是怎样跑起来的》第七章
    第七章主要讲述了计算机程序从源代码到最终执行的整个过程,包括编译、链接、加载和运行等关键环节。在编译过程中,编译器会对源代码进行语法和语义检查,确保代码的正确性,并将其转换成相应的机器码。这一过程既复杂又神奇,让我对计算机科学的魅力有了更深的认识。我对链接器和加载器......
  • 《程序是怎样跑起来的》第十章读后感
    第十章主要讲的是通过汇编语言认识程序的真面目,而汇编语言和本机代码是一一对应的,计算机的CPU能够直接解释执行的只有本机代码,而用C语言等编写的源代码需要使用各个编程语言对应的编译器进行编译,转换成本机代码,而本机代码来编写程序无疑是很难的,因此人们发明了一种方法叫做助记符,......
  • 《程序是怎么跑起来的》第1章读书笔记
    作为程序是怎么跑起来的第1章内容,这本书首先向我们介绍了什么是CPU,告诉了程序员这一基本内容,我也了解到寄存器是程序的描述对象,而CPU就是寄存器的集合体。而CPU也被人比作是计算机的大脑,它是由寄存器控制器运算器和时钟4个部分组成的,他们之间通过电流信号相互联通,而它们各自的用途......
  • 微软:符合条件设备将自动更新至Win11 23H2!
    今天微软发布公告表示,目前依然停留在Windows1121H2和22H2,但符合升级条件的设备,将会自动更新至最新的23H2更新。微软在公告中表示,Windows1123H2更新已进入新的部署阶段,符合升级条件的Windows11设备自动升级到23H2。此次自动更新针对的是已达到或即将达到服务期限的Windows1......
  • 《程序是怎样跑起来的》第三章第二节读后感
    在《程序是怎样跑起来的》第三章第二节中,作者介绍了计算机存储器的分类和工作原理。通过阅读这一部分,我对计算机存储器的概念和作用有了更深入的理解,并对计算机存储器的分类和工作原理有了更全面的认识。首先,作者介绍了计算机存储器的概念和作用。存储器是计算机中用于......