机组的概述

计算机系统组成

硬件系统和软件系统

计算机硬件

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,一经查实,立即删除!

相关文章

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…

Scala_【4】流程控制

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

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的同时重新上电的方式进入烧写…

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寄存器包含多个字段,这些字段指示不同类型内存的属性,例如是否可以缓存、是否为…

如何使用OBS Studio录制屏幕?

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

9.类的定义与使用

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

【文献精读笔记】Explainability for Large Language Models: A Survey (大语言模型的可解释性综述)(三)

****非斜体正文为原文献内容(也包含笔者的补充),灰色块中是对文章细节的进一步详细解释! 3.2 全局解释(Global Explanation) 与旨在解释模型个体预测的局部解释不同,全局解释提供了对语言模型…

学习随笔:word2vec在win11 vs2022下编译、测试运行

word2vec 官网word2vec的本质是在自然语言词条数据集与计算机浮点数据集之间建立双射关系。word2vec建立的数据集最厉害的一点是,将自然语言词条数据集内部的推理过程,映射到了计算机浮点数据集内部的数值运算。我个人感觉理解这个数据映射方式是理解AI大…

搭建nginx文件服务器

方法一:通过docker方式搭建 1、创建一个nginx配置文件/etc/nginx/nginx.conf user nginx; worker_processes 1;error_log /var/log/nginx/error.log warn; pid /var/run/nginx.pid;events {worker_connections 1024; }http {include mime.types;default_typ…

2017年IMO几何预选题第7题

凸四边形 A B C D ABCD ABCD 有内切圆 I I I, △ D A B \triangle DAB △DAB, △ A B C \triangle ABC △ABC, △ B C D \triangle BCD △BCD, △ C D A \triangle CDA △CDA 的内心分别为 I a I_a Ia​, I b I_b Ib​, I c I_c Ic​, I d I_d Id​. △ A I b I d \…

特殊数据类型的深度分析:JSON、数组和 HSTORE 的实用价值

title: 特殊数据类型的深度分析:JSON、数组和 HSTORE 的实用价值 date: 2025/1/4 updated: 2025/1/4 author: cmdragon excerpt: 随着数据管理需求的多样化,许多现代数据库系统开始支持特殊数据类型,以满足更多复杂应用场景的需求。在 PostgreSQL 中,JSON、数组和 HSTOR…

#渗透测试#漏洞挖掘#WAF分类及绕过思路

免责声明 本教程仅为合法的教学目的而准备,严禁用于任何形式的违法犯罪活动及其他商业行为,在使用本教程前,您应确保该行为符合当地的法律法规,继续阅读即表示您需自行承担所有操作的后果,如有异议,请立即停…

【Logstash02】企业级日志分析系统ELK之Logstash 输入 Input 插件

Logstash 使用 Logstash 命令 官方文档 https://www.elastic.co/guide/en/logstash/current/first-event.html #各种插件 https://www.elastic.co/guide/en/logstash/current/input-plugins.html https://www.elastic.co/guide/en/logstash/current/filter-plugins.html htt…

CentOS 7安装Docker详细教程

本文以 CentOS7.8 为例安装 Docker 26.1.4 、Docker Compose、以及 Docker 镜像仓库。 安装方式1:自动安装(使用官方脚本) 使用官网一键安装命令: curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun 或 使用国内 daocloud 一键安…

通过代理用户功能可以实现生产用户的应用滚动修改密码

Oracle通过代理用户功能可以实现生产用户的应用滚动修改密码。 测试例子: 生产用户为jyc密码为jyc 现在要求修改jyc的密码为abc,意味着所有应用都得停止同时修改。 此时可以考虑新建代理用户proxy_jyc,密码为jyc1(实际修改建议…

永磁同步电机控制算法--最大转矩电流比控制((升级版)公式法、曲线拟合法、查表法)

一、原理介绍 id0控制方法在电机输出相同的电磁转矩下电机的定子电流并不是最小的,因此,采用最大转矩电流比控制方法,使得电机在输出相同的电磁转矩下电机定子电流最少,实现该系统的原理框图如图所示。 最大转矩电流比控制也称单位电流输出最大转矩的控制,即控制id以追求最大转…