大家好,又见面了,我是你们的朋友全栈君。
我们常见的计算机,如笔记本。我们不常见的计算机,如服务器,大部分都遵守冯诺依曼体系。
计算机本质上是有输入,并且经过计算机的计算,将结果显示到某种显示输出上,就可以称为计算机。 输入单元:键盘,网卡,磁盘,话筒… 输出单元:显示器,网卡,磁盘,音响… 存储器没有特殊说明一般指的是物理内存。 中央处理器(CPU):含有运算器和控制器等 运算器在进行运算的时候无外乎两种情况,一种是算术运算,一种逻辑运算。 控制器主要能够用来进行处理计算机外部的各种控制信号。
冯诺依曼体系结构最典型的特征是所有的外设(输入单元和输出单元)产生的数据,必须将数据写入存储器。存储器本身没有计算能力,CPU通过某种方式来访问存储器,将数据读取进CPU内部,CPU进行运算器运算,控制器控制,最终将计算完的结果写回到内存当中。最后将最终的结果显示到显示器当中。 冯诺依曼规定了硬件层面上的数据流向
结论: 所有的输入设备,将数据输入到存储器当中,必须先到存储器(也就是内存)里面,然后运算器在合适的时候经过控制器控制,把数据加载到cpu内,在cpu内完成计算,将计算结果写回到内存,然后定期将数据刷新到输出设备。
为什么在磁盘中编写好的可执行程序,运行的时候,必须先加载到内存?
上图主存通常指的就是内存,本地存储和网络存储这两个可以称为外设。 离cpu更近的存储的容量更小,速度更快但是成本更高。 离cpu越远的,容量更大,速度更慢,成本更低。 内存离cpu还是相对比较近的,磁盘离cpu相对较远。cpu还是和内存直接打交道不会和外设打交道。根本原因是因为,离cpu太远的外设往往访问的时候速度太慢,速度太慢会拖累cpu的效率。 在数据层面,cpu不和外设打交道,外设只和内存打交道。
你登录上qq开始和某位朋友聊天,发送一句“在吗”。不考虑网络。 通过键盘输入在吗,其中输入设备叫做键盘,键盘输入的数据放到内存里,处理好数据把数据放到cpu里,cpu经过计算写回存储器,存储器将数据定期刷新出去,此时的输出设备叫做网卡。 朋友家的电脑接受数据,此时的输入设备是网卡,网卡收到的数据放到内存里,然后经过cpu运算,把处理完的结果再写回存储器里,存储器定期将数据刷新到输出设备,此时的输出设备是显示器。
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/203616.html原文链接:https://javaforall.cn