机组的概述

计算机系统组成

硬件系统和软件系统

计算机硬件

1.冯诺依曼机基本思想

特点

1.采用“存储程序”工作方式

2.硬件系统由运算器,存储器,控制器,输入输出设备组成

3.指令和数据存在存储器中,形式无区别

4.指令和数据用二进制代码表示。指令由操作码和地址码组成

“存储程序”基本思想是:

将事先编好的程序和数据送入主存才能执行

2.计算机的功能部件

1.输入设备

2.输出设备

3.存储器

分为主存储器和辅助存储器(外存)

CPU能直接访问主存,赋存必须调入内存才能被CPU访问

主存

按存储单元的地址进行存取

地址寄存器(MAR):用于寻址,位数对应存储单元个数,长度与PC长度相同

存放访存地址,经过地址译码找到所选的存储单元

数据寄存器(MDR):位数与存储字长相等

暂存存储器中读或写的信息

时序控制逻辑:产生存储器操作的各种时序信号

4.运算器

用于逻辑运算和算术运算

核心:算术逻辑单元(ALU)

运算器包含若干通用寄存器(暂存操作数和中间结果),如累加器(ACC),乘商寄存器(MQ),操作寄存器(X),变址寄存器(BR)等,前三个寄存器必须

运算器还有程序状态寄存器(PSW),用于存放ALU运算得到的标志信息和处理机的状态信息,

如结果是否溢出,是否进位或错位

5.控制器

计算机的指挥中心

由程序计数器(PC),指令寄存器(IR),控制单元(CU)组成

PC用来存放当前执行指令的地址,具有自动加一的功能(1表示一条指令的长度),即可自动形成下一条指令的地址,它与主存的MAR有直接通路

IR用于存放当前指令,其内容来自于内存的MDR。指令中的操作码送到CU,来分析指令并发出微操作命令序列,地址码送到MAR,用于取操作数

关系

运算器和控制器集成成CPU,

CPU和主存构成主机

硬件设备(外存,IO设备)为外设

虚线是控制信号:控制如何修改OC以得到下一条指令地址,ALU执行什么计算,控制主存读或写操作等

CPU和主存之间通过一组总线相连,总线有地址,控制和数据三组信号线。

MAR的地址信息会直接送到地址线,用于指向读写操作的主存存储单元

控制线有读写信号线,决定数据从CPU写入主存还是从主存读到CPU

计算机软件

系统软件

应用软件

三个级别语言

汇编程序:汇编语言翻译成机械语言

解释程序:源程序语句按顺序逐条翻译成机器语言并立即执行

编译程序:高级语言翻译成汇编或机器语言

层次结构

M5是高级语言层,高级语言层上有应用程序层

第三层到第五层为虚拟机,没配备软件的硬件系统为裸机

下层是上层的基础,上层是下层的扩展

软件和硬件之间的界面是指令集体系结构(ISA),其定义计算机可以执行指令集合。

ISA为软件能感知的部分,也称软件可见部分

工作原理

1.“存储程序”工作方式

将事先编好的程序和数据送入主存才能执行,一旦程序启动执行,无须操作人员干预,自动逐条完成指令取出和执行任务

PC

顺序型指令

跳转型指令

2.从源程序到可执行文件

预处理阶段:将.h文件插入

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/web/65070.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

后端开发入门超完整速成路线(算法篇)

引言 后端开发是软件开发中不可或缺的一部分,它涉及到服务器、数据库、API等核心组件的构建和维护。对于初学者来说,掌握算法和数据结构是进入后端开发领域的基础。本文将为你提供一个超完整的算法学习路线,帮助你快速入门,并在文…

主键有多种设计

1. 自增ID id bigint NOT NULL AUTO_INCREMENT COMMENT 主键ID 优点: 简单直观自动生成递增有序,对索引友好 缺点: 可能暴露业务信息分布式系统下需要特殊处理合并数据时可能冲突 2. UUID/GUID id char(36) NOT NULL COMMENT 主键ID …

【面试】后端开发面试中常见数据结构及应用场景、原理总结

在后端开发面试中,常见的数据结构包括数组、链表、栈、队列、二叉树、平衡树、堆、图和哈希表等。以下是这些数据结构的总结,包括它们的应用场景、优缺点。 常见数据结构及其应用场景 数据结构应用场景数组存储固定大小的数据集合,如学生成…

TypyScript从入门到精通

TypyScript从入门到精通 TypyScript 是什么?增加了什么环境搭建二、为何需要 TypeScript三、编译 TypeScript四、类型声明五、类型推断基本类型六、类型总览JavaScript 中的数据类型TypeScript 中的数据类型1. 上述所有 JavaScript 类型2. 六个新类型:3.…

Tableau数据可视化与仪表盘搭建-安装教程

下载 tableau.com/zh-cn/support/releases 滚动到最下方的下载 在下载的同时 我们点击登录,去注册一个tableau的账号 下面点击我们下载好的tableau安装程序 不要自定义安装,会有路径问题 点击试用14天 点击激活 激活学生 tableau.com/zh-cn/academic…

049_小驰私房菜_MTK Camera debug,通过adb 命令读写Camera sensor寄存器地址的值

一、读取/写入 某个寄存器地址的值 设备先adb root 1)读取寄存器地址的值 /proc/driver # echo "0x0a34" > camsensor && dmesg |grep -i a34 2)往寄存器地址写值 /proc/driver # echo "0x3304 0x66” > camsensor && dmesg |grep -…

Scala_【4】流程控制

第四章 分支控制if-else单分支双分支多分支返回值嵌套分支 For循环控制包含边界不包含边界循环守卫循环步长嵌套循环循环返回值 While循环Break友情链接 分支控制if-else 单分支 双分支 多分支 返回值 嵌套分支 For循环控制 Scala也为for循环这一常见的控制结构提供了非常多的…

Flink源码解析之:Flink On Yarn模式任务提交部署过程解析

Flink源码解析之:Flink On Yarn模式任务提交部署过程解析 一、Flink on Yarn部署模式概述 Apache Hadoop YARN 在许多数据处理框架中都很流行。 Flink 服务提交给 YARN 的 ResourceManager,后者会在 YARN NodeManagers 管理的机器上生成容器。 Flink 将…

Backend - C# 的日志 NLog日志

目录 一、注入依赖和使用 logger 二、配置记录文件 1.安装插件 NLog 2.创建 nlog.config 配置文件 3. Programs配置日志信息 4. 设置 appsettings.json 的 LogLevel 5. 日志设定文件和日志级别的优先级 (1)常见的日志级别优先级 (2&…

ESP32自动下载电路分享

下面是一个ESP32系列或者ESP8266等电路的一个自动下载电路 在ESP32等模块需要烧写程序的时候,需要通过将EN引脚更改为低电平并将IO0引脚设置为低电平来切换到烧写模式。 有时候也会采用先将IO接到一个按键上,按住按键拉低IO0的同时重新上电的方式进入烧写…

QML自定义数值编辑框SpinBox样式

代码展示 import QtQuick 2.9 import QtQuick.Window 2.2 import QtQuick.Controls 2.1Window {visible: truewidth: 640height: 480title: qsTr("Hello World")SpinBox {id: controlvalue: 50editable: truecontentItem: TextInput {z: 2text: control.textFromVal…

魅族手机调用tts失败解决

安装了阅读、MultiTTS之后,发现阅读的时候一直tts初始化失败,换了多个tts软件也不行。。。 解决方法:tts软件设置后台运行权限 打开“手机管家”权限管理后台管理找到自己安装的tts软件(比如我是MultiTTS)&#xff0c…

1-markdown转网页样式页面 --[制作网页模板] 【测试代码下载】

markdown转网页 将Markdown转换为带有样式的网页页面通常涉及以下几个步骤:首先,需要使用Markdown解析器将Markdown文本转换为HTML;其次,应用CSS样式来美化HTML内容。此外,还可以加入JavaScript以增加交互性。下面我将…

Eplan 项目结构(高层代号、安装地点、位置代号)

Eplan中的项目结构分为3个层次: (1)功能面结构。指明这个系统的功能,有什么用途。在EPlan中,指的就是"高层代号()"。 一般指的是线体。 (2)位置面结构。指明该…

《Armv8-A virtualization》学习笔记

1.MAIR 的全称是 Memory Attribute Indirection Register。它是ARM架构中的一种寄存器,用于定义内存的属性,并提供一种间接访问内存属性的机制。MAIR寄存器包含多个字段,这些字段指示不同类型内存的属性,例如是否可以缓存、是否为…

NLP 复习大纲

CH3 激活函数意义 增强网络表达能力,引入非线性因素 连续可导的非线性函数 尽可能简单 导数的值域要在合适的范围内 为什么会发生梯度消失 误差传播的迭代公式为: 其中需要用到激活函数的导数,而激活函数的导数值小于1时,误差经过…

如何使用OBS Studio录制屏幕?

可以进入官网或github进行下载: https://obsproject.com/download 安装包解压后进入bin 进入64-bit 选择obs 64 进入OBS Studio后在来源内右键,选择添加 选择添加显示器采集即可录取整个屏幕,窗口采集可选择窗口进行录制 选择对应显示器即配置…

深入理解连接池:从数据库到HTTP的优化之道

在现代应用开发中,高效的资源管理是关键,其中连接池(Connection Pool)技术起到了至关重要的作用。本文将带你深入了解连接池的概念及其在数据库和HTTP通信中的应用,结合 JDBC 与 Druid 的关系,以及 HttpURL…

XIAO Esp32 S3 网络摄像头——3音视频监控

1、介绍 之前分别介绍了音频和视频的接收,本文是整合了前2篇文章,实现了音视频的同时获取。 效果: 用xiao esp35 s3自制一个网络摄像头 2、适用场景广泛 家庭安防 无论是门前监控,还是室内安全,自制摄像头可以让你轻松把握每个角落,实时查看视频流,防止任何潜在风险。…

9.类的定义与使用

类的定义构造函数(__init__)实例变量类变量方法(实例方法)类方法(classmethod)静态方法(staticmethod)属性装饰器(property)私有属性与方法继承多态方法重写super()函数类的文档字符串类的属性和方法访问控制 1.类的定义: 如int,list,tuple等等都是类,还可以通过class方法自己…