第一次笔记:计算机硬件的工作原理 主存储器 运算器 控制器 计算机的工作过程 计算机系统的层次结构 三种级别的语言

简介: 第一次笔记:计算机硬件的工作原理 主存储器 运算器 控制器 计算机的工作过程 计算机系统的层次结构 三种级别的语言

主存储器



11.png


主存储器分为三部分:存储体 + RAM + ROM


从主存储器读取数据操作:CPU将地址发送给RAM,RAM根据地址在存储体中找到对应地址的数据,之后将数据传递给ROM,之后ROM将数据返回给CPU。


从主存储器写入数据操作:CPU将地址和数据分别传递给主存储器中的RAM和ROM,之后将数据写入存储体对应的地址。


存储体结构


image.png


运算器


image.png


ACC MQ X 都是存储数据的,ACC是累加器,MQ是乘商寄存器,X是通用寄存器。


ALU是算术逻辑单元。


控制器


image.png


CU是控制单元,是控制器的核心,加减乘除操作由他管理。


IR是指令寄存器,存放当前执行的指令。


PC是程序计数器。


计算机的工作过程


6.png


高级语言会被转化成机器语言,存放到主存储器中。


1.执行第一条指令


5.png


最开始PC的值是0,PC将地址0传递给MAR,MAR之后会到存储体中找到地址是0的数据,之后将数据传递给MDR,这个数据本质上就是指令,然后MDR将这个指令传递给IR,此时IR中有了这个指令,之后IR将指令的操作码传递给CU,CU分析之后,知道了这是一个“取数”的指令,之后IR将指令的地址码传递给MAR,经过一系列操作,将数据传递给MDR,最后MDR将数据存储到ACC中。


2.执行第二条指令


4.png


区别在于:

MDR得到的数据会存储到MQ中,然后将被乘数从ACC中转移到X中,之后经过ALU进行乘法操作,将MQ和X中的数据相乘,最后将乘积存储到ACC中。


3.执行第三条指令


3.png


加法指令:MDR中的数据相当于是加数,加数存储到X寄存器中,被加数存储在ACC中,之后两数进行加法运算。


计算机系统的层次结构


2.png


java等高级语言会抓变成汇编语言,如果程序中调用了系统的库函数的话,会经过系统调用,之后会变成机器语言,机器语言会变成为微程序机器语言。


三种级别的语言


1.png


相关文章
|
存储 人工智能 大数据
云计算平台:AWS、Azure和Google Cloud的比较与选择
在当今数字化时代,云计算平台成为了企业和个人的首选。本文将重点比较三大主流云计算平台:AWS、Azure和Google Cloud,从性能、功能、可用性以及定价等方面进行综合评估,帮助读者更好地选择适合自己需求的云计算平台。
|
5月前
|
人工智能 运维 安全
2025年远程控制软件排行榜:安全性能哪家强?ToDesk/TeamViewer/向日葵等对比
2025年远程控制软件排行榜:安全性能哪家强?ToDesk/TeamViewer/向日葵等对比
749 11
2025年远程控制软件排行榜:安全性能哪家强?ToDesk/TeamViewer/向日葵等对比
|
监控 Ubuntu Linux
如何使用不同的方法和命令来检查 Ubuntu 中的 CPU 数量?
如何使用不同的方法和命令来检查 Ubuntu 中的 CPU 数量?
1028 0
如何使用不同的方法和命令来检查 Ubuntu 中的 CPU 数量?
|
安全 测试技术 API
后端开发中的API设计原则与最佳实践
本文将深入探讨在后端开发中API(应用程序编程接口)设计的基本原则和最佳实践。通过阐述如何构建高效、可扩展且安全的API,帮助开发者提升后端系统的性能和用户体验。不同于传统的摘要,本文无需包含背景介绍,直接进入主题,为读者提供实用的指导。
748 7
|
监控 NoSQL 算法
探秘Redis分布式锁:实战与注意事项
本文介绍了Redis分区容错中的分布式锁概念,包括利用Watch实现乐观锁和使用setnx防止库存超卖。乐观锁通过Watch命令监控键值变化,在事务中执行修改,若键值被改变则事务失败。Java代码示例展示了具体实现。setnx命令用于库存操作,确保无超卖,通过设置锁并检查库存来更新。文章还讨论了分布式锁存在的问题,如客户端阻塞、时钟漂移和单点故障,并提出了RedLock算法来提高可靠性。Redisson作为生产环境的分布式锁实现,提供了可重入锁、读写锁等高级功能。最后,文章对比了Redis、Zookeeper和etcd的分布式锁特性。
1165 16
探秘Redis分布式锁:实战与注意事项
|
存储 算法 C语言
数据结构学习记录——图-最短路径问题(无权图单源最短路径算法、有权图单源最短路径算法、多源最短路径算法、Dijkstra(迪杰斯特拉)算法、Floyd算法)
数据结构学习记录——图-最短路径问题(无权图单源最短路径算法、有权图单源最短路径算法、多源最短路径算法、Dijkstra(迪杰斯特拉)算法、Floyd算法)
1294 1
|
存储 监控 安全
JVM工作原理与实战(四十):ZGC原理
JVM作为Java程序的运行环境,其负责解释和执行字节码,管理内存,确保安全,支持多线程和提供性能监控工具,以及确保程序的跨平台运行。本文主要介绍了ZGC、ZGC核心技术、ZGC的内存划分、ZGC的执行流程、分代ZGC的设计等内容。
1159 1
|
JSON API 数据格式
使用Python 获取天气数据
使用Python 获取天气数据
720 2
|
Java Sentinel 微服务