首页 > 其他分享 >第十一章 访问硬件的方法

第十一章 访问硬件的方法

时间:2024-02-28 13:11:37浏览次数:27  
标签:显存 第十一章 程序 硬件 访问 方法

《程序是怎样跑起来的》这本书,从多个角度深入浅出地解析了程序的运行原理及其背后的计算机科学知识。在第十一章“访问硬件的方法”中,我深感作者将复杂的技术知识用平易近人的方式呈现,让读者在轻松愉快的阅读中获得了宝贵的知识。
首先,这一章让我对硬件有了更深入的了解。在使用C语言等高级编程语言编写Windows应用程序时,很少会见到直接访问硬件的指令。这是因为对硬件的访问已经由Window操作系统一手包办了。然而操作系统还是为应用程序提供了间接访问硬件的方法,那就是使用系统调用。
接着,作者介绍了负责硬件输入输出的in指令和out指令的语法,如下图所示:

在这一章中,我还学到了外部设备的中断请求。 IRQ是中断请求的意思。IRQ是一种让当前正在运行的程序暂停转而运行其他程序的机制,这被称为中断处理。中断处理在硬件控制中扮演着重要的角色。如果没有中断处理,有些任务就无法顺利进行。
此外,作者还强调了能够快速传输大量数据的DNA,以及显示字符和图像的原理。 DMA是指外部设备不经过CPU中转直接和内存进行数据传输,常用于网络磁盘等设备。计算机中有一个用于保存要显示的信息的存储器。这一存储器称为显存。程序只要将数据写入显存数据就可以在显示器上显示出来。
总的来说,第十一章“访问硬件的方法”让我对程序与硬件之间的关系有了更深入的了解,以及告诉我们又该如何访问CPU和内存之外的硬件设备。

标签:显存,第十一章,程序,硬件,访问,方法
From: https://www.cnblogs.com/wuboke/p/18040002

相关文章

  • SpringBoot 1x 系列之(五)SpringBoot与数据访问
    SpringBoot与数据访问JDBC、MyBatis、SpringDataJPASpringBoot底层是使用的SpringData作为数据访问的默认处理方式。1.整合基本JDBC与数据源Pom依赖<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-jdbc</artifactId><......
  • 《程序是怎样跑起来的》第十一章读后感
    本章的主题是“硬件控制方法”。“计算机如果没有软件,就仅仅是个箱子”,也就是说,软件的存在是硬件正常运行的必要条件,本章主要讲到是程序如何控制CPU和主内存以外的硬件。开篇作者就用一张图说明了硬件控制软件,如下。而Window控制硬件借助的是输入输出指令,书中讲到两种指令,IN和O......
  • 深入理解 Java 修饰符与封装:访问权限、行为控制与数据隐藏
    Java修饰符Java修饰符用于控制类、属性、方法和构造函数的访问权限和行为。它们可以分为两组:访问修饰符:public:意味着代码对所有类可访问。private:意味着代码只能在声明的类内部访问。default:意味着代码只能在同一包中访问。protected:意味着代码在同一包和子......
  • 《程序是怎样跑起来的》第十一章读后感
    在阅读《程序是怎样跑起来的》第十一章后,我对于程序的运行和计算机的工作原理有了更为深入的理解。这一章主要探讨了计算机的硬件架构以及程序如何在硬件上实现并行计算,对于我理解计算机系统的底层实现具有很大的帮助。首先,这一章介绍了计算机的硬件架构,包括CPU、内存、硬盘、显......
  • 第十一章 硬件控制方法 笔记
    硬件是计算机系统的物理组成部分,包括CPU、内存、硬盘、外设等。它们负责执行具体的操作和存储数据。而硬件控制方法则是指通过软件来操控硬件的方式和技术。首先介绍了硬件的基本结构和工作原理。计算机硬件由许多不同的部件组成,每个部件都有其特定的功能和工作方式。例如,CPU负责......
  • 硬件控制方法
    利用操作系统提供的系统调用功能就可以实现对硬件的控制。在Windows中,系统调用称为API。IN指令通过指定端口号的端口输入数据,并将其存储在CPU内部的寄存器中。OUT指令则是把CPU寄存器中存储的数据,输出到指定端口号的端口。计算机主机中,附带了用来连接显示器及键盘等外围......
  • 程序是怎么跑起来的第十一章
    Windows提供了通过应用来间接控制硬件的方法,利用操作系统提供的系统调,用功能就可以实现对硬件的控制,在Windows中,系统调用称为API,各API就是应用调用的函数。IN指令通过指定端口号的端口输人数据,并将其存储在CPU内部的寄存器中。OUT指令则是把CPU寄存器中存储的数据,输出到指定端口......
  • react 使用splitChunks 拆分组件,缩小项目体积,加快加载访问速度
    react编写项目引入npm包打包时,总会将一些npm包重复打包的不同的js文件中,可以使用splitChunks进行拆分,降低体积,加快速度1、安装npminstallcustomize-crawebpack-bundle-analyzer2、修改启动命令,在package.json中修改"scripts":{"start":"react-app-rewiredstar......
  • 《程序是怎样跑起来的》第十一章读后感
    Windows控制硬件时主要借助的是输入输出指令,最具代表性的就是IN与OUT指令,这两个指令也是汇编语言的助记符。IN指令:通过指定端口号的端口输入数据,并将其存储在CPU内部的寄存器中。OUT指令:把CPU寄存器中存储的数据,输出到指定端口号的端口。端口号:IO控制器中用于临......
  • 索引的访问类型
    创建表:CREATETABLEsingle_table(idINTNOTNULLAUTO_INCREMENT,key1VARCHAR(100),key2INT,key3VARCHAR(100),key_part1VARCHAR(100),key_part2VARCHAR(100),key_part3VARCHAR(100),common_fieldVARCHAR(100),PRIMARYKEY(id),KEYidx_key1(key1),UN......