c语言学习--计算机软件和硬件

为什么会加载进内存?
因为内存的读写速度更快,而且cpu只能从内存中读写。
cpu并不能做所有的事情,是由源代码生成的机器码来告诉cpu怎么执行,cpu便从上而下来一步一步执行。

计算机的本质,就是一堆IC的组合体,通过各种电信号(高低电平/0和1)来进行简单的操作。

谁来操作硬件?
应用程序是导航,windows是司机,硬件是车。所以实质上是软件来控制硬件的。具体上是操作系统来操作硬件。
操作系统通过in & out 来进行硬件之间沟通(数据交换)的东西。
用法:

in 寄存器名,端口号
out 端口号,寄存器名

计算机是如何区分我们的硬件?
用端口号来区分(I/O范围),为不同的硬件划定不同的端口号,当计算机识别到这个端口号便会知道这是哪一个硬件。

什么是硬件冲突?
当不同硬件划分的端口号相同时,计算机无法辨别出到底是什么,便会发生硬件冲突。

每一个硬件的电流特征码是不一样的。

计算机中很多硬件,这些硬件应该是同时工作的,所以便有了“中断”。
IRQ:发生中断请求的 。
CPU->中断控制器->调节中断对于硬件的请求
(io控制器 中断控制器 CPU )

轮询?

轮询(Polling)是一种CPU决策如何提供周边设备服务的方式,又称“程控输出入”(Programmed I/O)。轮询法的概念是,由CPU定时发出询问,依序询问每一个周边设备是否需要其服务,有即给予服务,服务结束后再问下一个周边,接着不断周而复始。

中断原理:cpu接到中断以后会将当前寄存器里面的内容进行保存,然后会调用中断 ,完成中断以后会恢复到之前保存到寄存器里面的内容继续之前未完成的工作。

DMA,不需要通过cpu的调配和指派,可以直接将磁盘里面的数据存储到内存里面去。
(硬盘,磁盘里面都有DMA这种机制)
这里写图片描述

DMA(Direct Memory Access,直接内存存取) 是所有现代电脑的重要特色,它允许不同速度的硬件装置来沟通,而不需要依赖于 CPU 的大量中断负载。否则,CPU 需要从来源把每一片段的资料复制到暂存器,然后把它们再次写回到新的地方。在这个时间中,CPU 对于其他的工作来说就无法使用。

VRAM:Video Random Access Memory:显存,帧存储器,刷新存储器,或VRAM(缩写)

这里写图片描述

应用程序会有我们的 逻辑代码->windows进行硬件通信
中断和轮询,使得cpu可以匀速且快的完成任务

软件的重要性
是什么让我们的计算机能够思考的呢?
程序程序程序!
用程序表达思考
(程序可以分为:工具性程序以及可以“思考”的程序)
猜拳游戏:
这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值