计算机世界--软件和硬件

软件和硬件

软件的重要性

pc如果没有软件就仅仅是一个盒子

源代码 通过编译器 形成汇编 然后被加载到内存(因为内存的读写速度非常快) CPU(从内存中取数据)。

CPU能做的东西很简单,就是从上而下,依次执行,根据程序计数器里面的地址来一步一步的完成操作,然后再通过标志寄存器进行跳转(逻辑处理)。

但是我们从来没有写过一句与硬件相关的代码,这些硬件都是由操作系统为我们提供的,我们使用最多的是API,这些API是一些指令,我们的指令是由操作系统来翻译

我们所有的硬件都是ic芯片,有两个操作,IN和OUT来进行硬件和Windows之间通信的指令。

IN 寄存器名,端口号 从硬件读数据到CPU中

OUT 端口号,寄存器名 从CPU写入指令到硬件中

端口号:存在于电脑中的唯一编号

我们电脑中有各种各样的硬件,我们使用端口号来区分这些硬件。

在xp操作系统中,经常遇到硬件冲突的问题,就是硬件的端口号冲突,因为CPU不知道往哪个端口号读写,现在的端口号,都是由系统统一分配。

如果电脑中有很多的硬件,我的CPU处理不过来怎么办?还有电脑中的每个硬件的电流特征码不一样,我们如何让它一致化呢?

硬件和操作系统之间还有一个中间层:就是I/O控制器,I/O控制器就是将硬件中的电流信息统一进行一个翻译,翻译成我们的统一的信号。但是这样还会有一个问题,我有很多硬件,这些硬件应该是同时工作的,应该有一个东西让我们同步进行,这就是中断(IRQ)。

IRQ:就是来发送中断请求的。

新的问题,电脑中有这么多硬件,一直中断一个硬件,那么就没法运行了,这是又有了中断控制器。

在I/O控制器和CPU之间又有一个中断控制器,就是所有的I/O控制器都将自己的信息发送到中断寄存器中,发来之后,按顺序发给我们的CPU,我们CPU这边还会来做一个事情,就是轮询处理中断信息。

CPU是如何来处理中断的呢?答案是:通过栈实现的。

跟显卡通信:VRAM(Vedio RAM):负责显示,这是一块特殊的内存区域,即显存,在最开始的时候(dos时期),没有这样的东西,它是在内存中直接划分这样一块内存用来显示。现在的显卡带有GPU,已经集成好了VRAM,来显示,节省了宝贵的内存资源。

我们用过的程序可以分为两种:一种是工具类的程序(办公软件),还有一种是可以思考的程序(智能电饭煲,智能电冰箱,导航)。

猜拳游戏:石头剪刀布

我们可以让我们的这个游戏的程序有一下几种运行方式:

一直出石头 -》
随机出石头剪刀布 -》 简单的看起来像是在思考
通过记忆来完成这个程序 -》 我们的电脑是能够存储值的,
1. 我以每 10 把为一个随机
2. 10 把分析你出什么最多,我就多出赢你的那个
3. 还可以分析你输了之后喜欢出什么,赢了之后喜欢出什么?
经过这样一分析,我们的软件就看起来能够自己思考了,这也就是人赋予它的一些简单的逻辑思考能力,这就向我们上面所说的人工智能。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值