计算机体系结构和指令系统

news2024/11/24 13:56:48

1.计算机体系结构 - 五大部件

 - 冯 诺依曼 计算机的特点

1.计算机有五大部件组成

2.指令和数据以同等地位存储于存储器,可按照地址访问

3.指令和数据用二进制表示

4.指令由操作码和地址码组成

5。存储程序

6.以计算器为中心(输入、输出设备与存储器之前的数据传送通过计算器完成)

计算机体系结构 - 主存储器

1.存储单元:每个存储单元存放一串二进制代码

2.存储字(word):存储单元中二进制代码的组合

3.存储字长:存储单元中二进制代码的位数(拓展:指令字长:计算机接收指令的二进制长度,机器字长:计算机在一次整数运算中能处理的最大二进制位数)

4.存储元:即存储二进制的电子元件,每个存储元可存储 1 bit

5.MAR:地址寄存器(可以用地址寄存器的长度来计算出存储单元的个数,例如:当MAR为 4 位时,那么存储单元的个数就有 2*2*2*2 (也就是2的4次方)个存储单元,)

6.MDR:数据寄存器(指的是每个存储单元能存放的最大二进制位数,例如:MDR = 16 那么一个存储单元最大就能存放 16 位二进制数)

易混淆:1个字节 = 1个Byte = 1B = 8bit = 8b

计算机体系结构 - CPU

1.运算器:用于实现算数运算(如:加减乘除)、逻辑运算(如与或非)

2.ACC:累加器,用于存放操作数,或运算结果

3.MQ:乘商寄存器,在乘、除运算时,用于存放操作数或运算结果

4.X:通用的操作数寄存器,用于存放操作数

5.ALU(很重要):算数逻辑单元,通过内部复杂的电路实现算数运算、逻辑运算

6.DR:数据缓存寄存器

7.PSW:状态条件寄存器,用来保存指令运行标志(例如有些游戏打到一半关机了,下次打开的时候依旧可以接着上次的进度)

计算机体系结构 - CPU

1.CU:控制单元,分析指令,给出控制信号

2.IR:指令寄存器,存放当前执行的指令

3.PC:程序计数器,存放下一条指令地址,有自动加 1 的功能

4.AR:地址寄存器,保存当前CPU所访问的内存单元地址

5.ID:指令译码器,对操作码进行分析

6.完成一条指令的过程:取指令 -> 分析指令 -> 执行指令(之前说过:指令和数据以同等地位存储在存储器中,所以我们该如何区分此次取出来的指令还是数据呢?通过阶段来区分,例如:在取指令阶段那么从存储器中取出来的二进制数就一定表示指令)

计算机体系结构 - Flynn分类

体系结构类型结构        关键特性代表
单指令流单数据流SISD

控制部分:一个

处理器:一个

主存模块:一个

        单处理器系统
单指令流多数据流SIMD

控制部分:一个

处理器:多个

主存模块:多个

各处理器以异步的形式执行同一条指令

1.并行处理机

2.陈列处理机

3.超级向量处理机

多指令流单数据流MISD

控制部分:多个

处理器:一个

主存模块:多个

被证明不可能,至少以目前的技术无法实现,只是理论上存在目前没有,有文献称流水线计算机为此类
多指令流多数据流MIMD

控制部分:多个

处理器:多个

主存模块:多个

能够实现作业、任务、指令等各级全面并行

多处理机系统

多计算机

Single:单一的

Multiple:倍数、多种多样的

指令系统 - 指令

1.指令(又称为机器指令):是指令计算机执行某种操作的命令,是计算机运行的最小功能单位;

2.一台计算机的所有指令的集合构成该 计算机的指令系统,也称为指令集;

指令系统 - 指令格式

1.一条指令就是机器语言的一个语句,他是一组有意义的二进制代码;

2.一条指令通常要包括 操作码字段地址码字段 两部分;

重要考点:指令系统 - 寻址方式

指令系统 - 寻址方式(数据寻址)以下寻址方式从上至下 寻址效率依次降低 ->

1..立即寻址:此操作数作为指令的一部分直接写在指令中,这中操作数成为立即数

2寄存器寻址:指令所要的操作数已存储在某寄存器中,或把目标操作数存入寄存器

3.直接寻址:指令所要的操作数存放在内存中,在指令中直接给出该操作数的有效地址

4.寄存器间接寻址:操作数在存储器中,操作数的有效地址用 SI 、DI、Bx 、BP 四个寄存器之一来指定

5.基址加变址寻址方式:操作数在寄存器中,其有效地址是一个基址寄存器( BX  、 BP )和一个变址寄存器 ( SI 、DI ) 的内容之和

6.相对基址加变址寻址:操作数在寄存器中,其有效地址是一个基址寄存器(BX 、 BP)的值,一个变址寄存器 (SI 、 DI)的值和指令中的 8位/16位偏移量之和 

指令系统 - CISC 和 RISC

CISC(Complex)RISC(Reduced)
指令系统复杂,庞大简单,精简
指令数目一般大于 200 条一般小于 100 条
指令字长不固定定长
可访存指令不加限制只有Load/Store指令
各种指令执行时间相差较大        绝大多数一个周期内完成
各种指令使用频度相差较大都比较常用
通用寄存器数量较少
控制方式绝大多数为微程序控制绝大多数为组合逻辑控制
指令流水线可以通过一定方式实现必须实现

指令系统 - 指令的流水处理

1.指令控制方式有 顺序方式、重叠方式 和 流水方式三种

2.流水方式:是指 并行性或并发性 嵌入计算机系统里的一种形式,他把重复的顺序处理过程分解为若干子过程,每个子过程能在专用的独立模块上有效的并发工作

3.在概念上," 流水 "可以看成是 "重叠" 的延伸;差别仅在于 " 一次重叠 " 只是把一条指令解释分解为两个子过程,而 " 流水 " 则是分解为更多的子过程。

指令系统 - 流水线的计算

例题:若指令流水线把一条指令分为 :取指令、分析指令、执行指令三部分,且三部分的时间分别是 -> 取指令:2ns   分析指令:2ns   执行指令:1ns ,那么流水线周期是多少?100条指令全部执行完毕需要的时间是多少?

1.流水线周期为执行时间最长的一段:上述中 取指令:2ns   分析指令:2ns   执行指令:1ns 三个发过程中执行时间最长的显然是 2ns,所以流水线周期为 2ns

2.流水线计算公式为: 1条指令执行时间 +(指令条数 - 1)* 流水线周期 ;所以计算结果如下所示 -> 

100条指令执行完的时间为:2 + 2 + 1 +(100 -1)* 2 =  203

那么如果不使用流水线处理的话100条指令执行完的时间就是:( 2 + 2 + 1 )*100 = 500

3.拓展:流水线的吞吐率(Though Put rate ,TP):是指在单位时间内流水线所完成的任务数量或输出的结果数量;

4.计算流水线吞吐率的最基本的公式如下:TP = 指令条数 / 流水线执行时间

5.依照上面例题计算流水线吞吐率的话就是:100 / 203 ≈ 0.5

6.流水线开始工作后,需经过一定时间才能达到最大吞吐率,这就是 建立时间;若 m 个子过程所用时间一样,均为 t ,则建立时间 T = m * t

7.完成同一批任务,不使用流水线所用的时间与使用流水线所用的时间之比成为 流水线的加速比 ,计算流水线加速比的基本公式如下:S = 不使用流水线执行时间 / 使用流水线执行时间

还是用上面例题的来计算 -> S = 500 / 203 ≈ 2.46

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

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

相关文章

成都市水资源公报(2000-2022年)

数据年限:2000-2022年,无2009年 数据格式:pdf、word、jpg 数据内容:降水量、地表水资源量、地下水资源量、水资源总量、蓄水状况、平原区浅层地下水动态、水资源情况分析、供水量、用水量、污水处理、洪涝干旱等

[XYCTF新生赛]-PWN:EZ1.0?(mips,mips的shellcode利用)

查看保护 查看ida 这里用的是retdec,没安装的可以看这个[CTF]-PWN:mips反汇编工具,ida插件retdec的安装-CSDN博客 这里直接看反汇编貌似看不出什么,所以直接从汇编找 完整exp: from pwn import* context(log_leveldebug,archmip…

【机器学习】在【Pycharm】中的应用:【线性回归模型】进行【房价预测】

专栏:机器学习笔记 pycharm专业版免费激活教程见资源,私信我给你发 python相关库的安装:pandas,numpy,matplotlib,statsmodels 1. 引言 线性回归(Linear Regression)是一种常见的统计方法和机器学习算法&a…

Nature Climate Change | 中国科学院地理资源所吴朝阳课题组发表生物多样性调控植被物候的研究成果!

本文首发于“生态学者”微信公众号! 植被春季物候对气候变化的响应通常是通过测量其温度敏感性(ST,温度每升高1度,植被提前展叶的天数)来量化。ST是植被在当地历史气候环境的选择压力下演化形成的最优策略,…

基于GRU自回归解码模拟人类股票交易实现高胜率

这里是基于encoder-decoder和注意力机制 模型代码,sigmoid对资产进行调仓。训练直接使用收益作为优化函数 import torch import torch.nn as nn from dataloader import create_dataloadersclass Attention(nn.Module):def __init__(self, hidden_dim):super(Attention, self…

C++集中营笔记(1)第一节课和第二节课

第一节课linux的使用 1.Linux 常用命令 [chenbogon ~]$ cd ~ [chenbogon ~]$ cd /home [chenbogon home]$ mkdir cpp-test mkdir: cannot create directory ‘cpp-test’: Permission denied [chenbogon home]$ sudo mkdir cpp-testWe trust you have received the usual lec…

Leetcode 78 数组子集

题目描述: 给你一个整数数组 nums ,数组中的元素 互不相同 。返回该数组所有可能的 子集(幂集)。 解集 不能 包含重复的子集。你可以按 任意顺序 返回解集。 示例 1: 输入:nums [1,2,3] 输出&#xff1…

pyqt 文件浏览列表视图和图标视图

pyqt 文件浏览列表视图和图标视图 目的效果代码 目的 使用pyqt实现文件浏览列表视图和图标视图,像电脑文件浏览一样。如下图所示。 效果 代码 import sys from PyQt5.QtWidgets import QApplication, QMainWindow, QVBoxLayout, QWidget, QToolBar, QAction, Q…

商城自动化测试实战 —— 登录+滑块验证

hello大家好,我是你们的小编! 本商城测试项目采取PO模型和数据分离式架构,采用pytestseleniumjenkins结合的方式进行脚本编写与运行,项目架构如下: 1、创建项目名称:code_shopping,创建所需项目…

基于单片机光纤测距系统的设计与实现

摘要 : 光纤由于其频带宽 、 损耗低及抗干扰能力强等优点已被广泛地应用在通信 、 电子及电力方面 , 是我们生产生活中必不可少的媒介。 在实际的光纤实验 、 安装 、 运营和维护工作中 , 一种精准 、 轻便和易操作的光纤测距系统显得尤为重…

粉色专业月子会所服务网站源码pbootcms模板

模板介绍 随着时代的发展,月子中心这个产业已越来越盛行,小编挣了一款粉色专业月子会所服务网站源码pbootcms模板供大家下载,适合家政、月嫂服务、母婴护理、月子会所、保姆服务等相关业务,响应式自适应的源码下载设计让您快速编…

百度网盘下载速度慢的解决办法

目录 一、背景 二、解决办法 1、点击三个竖点,再点设置 2、点击传输,再点击去开启该功能 3、点击同意,开启优化速率 三、结果 四、备注 一、背景 当你不是百度网盘会员时,你在使用百度网盘下载时,是否下载速度太…

B站CEO陈睿:超8000万用户在看AI内容

AI圈最近又发生了啥新鲜事? 该栏目以周更频率总结国内外前沿AI动态,感兴趣的可以点击订阅合集以及时收到最新推送 B站CEO陈睿:每月超过8000万用户在平台看AI内容 B站15周年庆上B站董事长兼CEO陈睿发表演讲,公布了B站上AI的内容…

【自然语言处理】预训练语言模型实现与应用

预训练语言模型实现与应用 1 任务目标 1.1 案例简介 ​ 2018年,Google提出了预训练语言模型BERT,该模型在各种NLP任务上都取得了很好的效果。与此同时,它的使用十分方便,可以快速地对于各种NLP任务进行适配。因此,B…

GraalVM windows系统初体验

传统的jvm需要 经历 java ->class ->装载、链接、初始化、使用、卸载等步骤,启动非常慢且费内存, graalvm则是AOT编译器把字节码直接翻译成机器识别的二进制编码的本地镜像,大大提高了启动速度和减少内存消耗 官网:https:…

LLM端侧部署系列 | 手机上运行47B大模型?上交推理框架PowerInfer-2助力AI手机端侧部署

0. 引言 黄梅时节家家雨,青草池塘处处蛙。 有约不来过夜半,闲敲棋子落灯花。 当下,在移动设备上部署大型模型的趋势是愈演愈烈。Google推出了AI Core,使得Gemini Nano可以在智能手机上部署。此外,近期传闻苹果在iOS …

常用组件详解(二):torchsummary

文章目录 一、基本使用二、常见指标2.1Input size2.2Forward/backward pass size 一、基本使用 torchsummary库是一个好用的模型可视化工具,用于帮助开发者把握每个网络层级的细节,包括其中的连接和维度。使用方法: from torchsummary impor…

2、音频编码格式--AAC

1、AAC:AAC是一种音频编码格式,由于其可以任意帧解码的优点,常用于直播中。 AAC的封装格式:ADTS、ADIF。那为什么需要对AAC进行封装呢?这是由于音频流在传输的过程中,是以一个一个数据包进行发送的&#xf…

密码学及其应用 —— 非对称加密/公匙密码技术

1 RSA加密算法 RSA加密算法是一种基于公钥密码学的加密技术,由罗纳德里维斯特(Ron Rivest)、阿迪萨莫尔(Adi Shamir)和伦纳德阿德曼(Leonard Adleman)在1977年共同发明。RSA算法是第一个既能用于…