Poedu_计算机基础_lesson07_20160903_软件和硬件
2016-09-05 19:38
288 查看
软件:由源代码生成的可执行文件
=>软件的重要性:PC如果没有软件就仅仅是一个盒子,这个盒子里面放了一些IC而已
1.非常重要的一幅图:
2.我们没有写一句操作硬件的代码,那么硬件是由谁操作的?
=>我们平时只调用API
=>加上windows层之后,硬件是车,windows是司机,我们是指挥司机的人
=>我们的指令通过操作系统进行翻译,由操作系统进行硬件的操作
=>应用软件经过操作系统的翻译,变成操作硬件的代码
3.windows如何与硬件打交道?
操作机制:硬件是IC的集合,汇编里有两句指令,in和out,使CPU和其他硬件进行交互
=>汇编指令:in 寄存器,端口号 从其它硬件读取信息到CPU
out 端口号,寄存器名 CPU写入指令到指定端口
=>端口号:显卡->属性->资源->I/O范围(端口号):电脑中有各种各样的硬件,我们要加以区分
=>每个硬件的端口号都是不同的,是电脑中的唯一编号(端口号不唯一:XP中的硬件冲突:并不是硬件打架了,而是两个硬件定了一样的端口范围,CPU懵了,不知道谁是谁)
=>如何不冲突:分配的时候小心分配(现在是系统统一调配)(简单的端口冲突不会导致蓝屏)
4000
4.计算机中有很多的硬件,CPU处理不及时怎么办?
很多硬件应该同时工作 :打键盘的时候同时可以操作鼠标:怎么做到的?
=>中断机制(IRQ:发送中断请求的):暂停一下当前工作,执行另一个请求,但是不能一味的中断一个,怎么办?
=>中断控制器:同时处理多个中断,位于IO控制器和CPU之间,所有的IO控制器将请求发送至中断控制器,由中断控制器记录顺序,再由CPU处理
=>CPU的轮询机制:如果当前只有你一个请求,那么我只执行你的,如果有别的请求进来,我会轮流来进行处理
=>不会错过:有中断控制器
5.CPU如何处理中断?
处理另一个中断前,保存当前状态(入栈),待会儿才能回来继续执行,不然会乱
6.如何与显卡通信
VRAM(vedio)(显存):平时只需要在这块区域写入东西,它就会在显示屏显示出来
=>DOS时期是在内存中划一段内存出来
=>现在是显卡,显卡里面有显存和GPU(可以自己进行计算),不用再使用RAM中的内存
7.每一个硬件的电流特征码都是不一样的,如何一致化呢?
IO控制器:存在于主板上,把不同的电流特征码翻译成统一的信号
8.小总结
应用程序写上逻辑代码,交由windows与硬件进行通信(使用in和out 交互),硬件很多,依靠中断和轮询的机制,可以快速的处理每个硬件的请求
9.电脑就是一些电路,进行机器化的运作,怎么进行智能思考的?==>通过程序进行进化
两种程序:1)工具类程序 2)能够思考的程序
=>怎么让程序思考(以猜拳游戏为例)
=>1)一直让机器出石头
=>2)随机出石头剪刀布
=>3)通过记忆完成这个程序
=>电脑是能够存储值
=>10把为一个周期
=>第一个10 随机 计算对手的概率 (比如50%的几率出石头)
=>第二个10 分析对手出什么赢最多 那么我就出克制的那个
=>分析对手的行为习惯,比如出什么之后,如果赢了会出什么,输了会出什么,数据多了之后,这个程序就会学习了
10.知识补充:1)决定程序怎么走的是汇编代码,而不是CPU
2)DMA:磁盘和内存的交互不需要通过CPU DMA就可以完成
3)应用软件无法直接操作硬件,被操作系统屏蔽了
4)link是为了使应用软件里的东西能够被windows操作系统理解
5)内存为什么能存储数据:存储电流信息
11.作业:复习两周所学
=>软件的重要性:PC如果没有软件就仅仅是一个盒子,这个盒子里面放了一些IC而已
1.非常重要的一幅图:
2.我们没有写一句操作硬件的代码,那么硬件是由谁操作的?
=>我们平时只调用API
=>加上windows层之后,硬件是车,windows是司机,我们是指挥司机的人
=>我们的指令通过操作系统进行翻译,由操作系统进行硬件的操作
=>应用软件经过操作系统的翻译,变成操作硬件的代码
3.windows如何与硬件打交道?
操作机制:硬件是IC的集合,汇编里有两句指令,in和out,使CPU和其他硬件进行交互
=>汇编指令:in 寄存器,端口号 从其它硬件读取信息到CPU
out 端口号,寄存器名 CPU写入指令到指定端口
=>端口号:显卡->属性->资源->I/O范围(端口号):电脑中有各种各样的硬件,我们要加以区分
=>每个硬件的端口号都是不同的,是电脑中的唯一编号(端口号不唯一:XP中的硬件冲突:并不是硬件打架了,而是两个硬件定了一样的端口范围,CPU懵了,不知道谁是谁)
=>如何不冲突:分配的时候小心分配(现在是系统统一调配)(简单的端口冲突不会导致蓝屏)
4000
4.计算机中有很多的硬件,CPU处理不及时怎么办?
很多硬件应该同时工作 :打键盘的时候同时可以操作鼠标:怎么做到的?
=>中断机制(IRQ:发送中断请求的):暂停一下当前工作,执行另一个请求,但是不能一味的中断一个,怎么办?
=>中断控制器:同时处理多个中断,位于IO控制器和CPU之间,所有的IO控制器将请求发送至中断控制器,由中断控制器记录顺序,再由CPU处理
=>CPU的轮询机制:如果当前只有你一个请求,那么我只执行你的,如果有别的请求进来,我会轮流来进行处理
=>不会错过:有中断控制器
5.CPU如何处理中断?
处理另一个中断前,保存当前状态(入栈),待会儿才能回来继续执行,不然会乱
6.如何与显卡通信
VRAM(vedio)(显存):平时只需要在这块区域写入东西,它就会在显示屏显示出来
=>DOS时期是在内存中划一段内存出来
=>现在是显卡,显卡里面有显存和GPU(可以自己进行计算),不用再使用RAM中的内存
7.每一个硬件的电流特征码都是不一样的,如何一致化呢?
IO控制器:存在于主板上,把不同的电流特征码翻译成统一的信号
8.小总结
应用程序写上逻辑代码,交由windows与硬件进行通信(使用in和out 交互),硬件很多,依靠中断和轮询的机制,可以快速的处理每个硬件的请求
9.电脑就是一些电路,进行机器化的运作,怎么进行智能思考的?==>通过程序进行进化
两种程序:1)工具类程序 2)能够思考的程序
=>怎么让程序思考(以猜拳游戏为例)
=>1)一直让机器出石头
=>2)随机出石头剪刀布
=>3)通过记忆完成这个程序
=>电脑是能够存储值
=>10把为一个周期
=>第一个10 随机 计算对手的概率 (比如50%的几率出石头)
=>第二个10 分析对手出什么赢最多 那么我就出克制的那个
=>分析对手的行为习惯,比如出什么之后,如果赢了会出什么,输了会出什么,数据多了之后,这个程序就会学习了
10.知识补充:1)决定程序怎么走的是汇编代码,而不是CPU
2)DMA:磁盘和内存的交互不需要通过CPU DMA就可以完成
3)应用软件无法直接操作硬件,被操作系统屏蔽了
4)link是为了使应用软件里的东西能够被windows操作系统理解
5)内存为什么能存储数据:存储电流信息
11.作业:复习两周所学
相关文章推荐
- 计算机语言发展史及Java语言简介
- BZOJ 3038 上帝造题的七分钟2
- 线段树总结
- 计算机系统漫游(1)
- HTTPS协议下两种接受自定义Server Certificates的方式
- CCF 201503-4 网络延时
- linux常用网络配置
- TCP三次握手和四次分手
- tcpdump 之 arp请求,tcp的3次握手,4次断开,详解
- CCF 201403-4 无线网络
- http缓存策略
- BIOS/UEFI基础——UEFI网络框架之概述
- 数据结构-多维数组和广义表
- tcpdump Flags的含义
- 计算机的工作原理
- 【网络安全】十三步简单入侵个人电脑教程
- 计算机网络部分的面试常考点
- 查看当前计算机的端口信息
- Bottle.py的教程翻译(一)——安装
- hihocoder #1343 : Stable Members(支配树)