ch8_1_CPU的结构和功能

news2024/11/16 13:29:18

1. cpu的结构

在这里插入图片描述

1.1CPU 的功能

  1. 控制器的功能
控制器的功能具体作用
取指令指令控制
分析指令操作控制
执行指令, 发出各种操作命令
控制程序输入与结果的输出时间控制
总线管理处理中断
处理异常情况和特殊请求数据加工
  1. 运算器的功能
    实现算术运算 和 逻辑运算;

1.2 CPU 的结构框图

pc: 指出,需要取出的指令地址。
IR: 指令寄存器,从内存单元中,取出的指令 被存放到cpu内部的 IR寄存器中。

cpu与系统总线实现单元
指令控制PC, IR
操作控制CU 时序电路
时间控制
数据加工ALU 寄存器
处理中断中断系统

2.  CPU 的寄存器

在这里插入图片描述

2.1 用户可见寄存器

寄存器类别具体作用
通用寄存器存放操作数, 可作为某种寻址方式所需要的专用寄存器
数据寄存器存放操作数,满足各种数据类型, 两个寄存器拼接存放双倍字长数据
地址寄存器存放地址,其位数应该满足最大的地址范围,用于特殊的寻址方式, 段基值, 栈指针
条件码寄存器存放条件码, 可作为程序分支的依据, 如正负, 零,溢出,进位等

2.2 控制和状态寄存器

在这里插入图片描述

  1. 控制寄存器

pc --> MAR --> M -->MDR --> IR

控制 CPU 操作,

其中 MAR、 MDR、 IR 用户不可见

PC 用户可见

MAR: 主存地址寄存器。
M:主存
MDR: 主存数据寄存器。

  1. 状态寄存器

状态寄存器: 存放条件码
PSW 寄存器: 存放程序状态字

程序状态字的概念
在主程序调用子程序过程中, 为了能够在完成调用之后,继续执行主程序,
需要将主程序的调用现场保存起来, 包括调用子程序时的软件信息和硬件信息,

以及程序的状态信息, 都存放在一个程序状态字寄存器中。

3.  控制单元 CU 和中断系统

在这里插入图片描述

3.1 控制单元 CU

组合逻辑设计, 硬连线逻辑

微程序设计, 存储逻辑

3.2 中断系统

后面介绍

4. ALU

算术逻辑单元

参考前文 ch6;

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

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

相关文章

基于Java多角色学生管理系统设计实现(源码+lw+部署文档+讲解等)

博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精…

基于Java网上服装销售系统设计实现(源码+lw+部署文档+讲解等)

博主介绍: ✌全网粉丝30W,csdn特邀作者、博客专家、CSDN新星计划导师、java领域优质创作者,博客之星、掘金/华为云/阿里云/InfoQ等平台优质作者、专注于Java技术领域和毕业项目实战 ✌ 🍅 文末获取源码联系 🍅 👇🏻 精…

【大数据】可视化仪表板 - Superset的安装和使用

写在前面:博主是一只经过实战开发历练后投身培训事业的“小山猪”,昵称取自动画片《狮子王》中的“彭彭”,总是以乐观、积极的心态对待周边的事物。本人的技术路线从Java全栈工程师一路奔向大数据开发、数据挖掘领域,如今终有小成…

11-高性能JSON库——fastjson2

目录 1.具体使用 1.1.添加fastjson2依赖 1.2.常用类和方法 1.3.将JSON字符串转换成对象 1.3.1.JSON字符串转换成对象 1.3.2.JSON字符串转换成数组 1.4.将对象转换成JSON字符串 1.4.1.将对象转换成JSON字符串 1.4.2.将数组转换成 JSON 字符串 2.性能测试报告 3.总结 …

浪潮发布G2平台

2017年2月28日下午,浪潮在北京粤财JW万豪酒店以“智变”为主题,发布新一代智能存储平台G2,该平台基于统一架构和In系列智能软件设计,在保障”三高”特性满足企业级关键数据存储、处理需求的同时,更强调数据生命周期的智…

第六章 部署WSUS及RDS服务

❄️作者介绍:奇妙的大歪❄️ 🎀个人名言:但行前路,不负韶华!🎀 🐽个人简介:云计算网络运维专业人员🐽 前言 适用范围:Windows Server 2022、Windows Server…

揭密ChatGPT背后团队鲜为人知的小秘密

ChatGPT引领的人工智能技术浪潮还在持续火爆,可是做出这款产品的OpenAI公司,熬得住多年的冷板凳,最终一飞冲天,他们是怎么做到的呢? 因此,我对这家企业的组织建设产生了浓厚的兴趣。我找啊找,最…

游戏开发日志13(利用PlayerPrefs来存储数据)

为游戏设置一个音量键,可以自由选择背景音乐是否开启,并且保存这个设置。 设计了UI如下: 其中BGM为Toggle,其余四个为Button 在canvas(set)上添加两个脚本:GameMnue,GameManage p…

【备战秋招】每日一题:4月15日美团春招第三题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第三题-交通规划 在线评测链接:P1237 题目内容 塔子哥所在的国家有 n 个城市,这 n 个城市排成一列,按顺序编号为 1,2,3,...,n。然而,由…

【备战秋招】每日一题:4月8日美团春招第五题:题面+题目思路 + C++/python/js/Go/java带注释

为了更好的阅读体检,为了更好的阅读体检,,可以查看我的算法学习博客第五题-RGP种树 在线评测链接:P1170 题目描述: 塔子哥是一位著名的冒险家,他经常在各种森林里探险。今天,他来到了道成林,…

【Django 网页Web开发】24. 实战项目:moudleForm的文件上传应用到城市管理(17)(保姆级图文)

目录 用户上传文件存放media如何启用1. 在urls.py中进行配置:2. 在settings.py中进行配置:3. 能够通过media的url访问文件 moudleForm上传文件实现城市管理1. moudle.py2. url.py3. city.py4. city.html5. 文件上传小结6. 城市管理效果总结 欢迎关注 『D…

Vivado远程开发探索

平时主要用轻薄本办公,但是有时候又需要用Vivado做一些开发的工作,就感觉生产力不够。如果能在远程的高性能服务器上跑Vivado综合实现就好了。前段时间用ubuntu下安装的Vivado发现有一个Remote Host的设置。所以就准备折腾一下这个。 WSL WSL的安装看官…

chatgpt赋能python:Python怎么调成黑色背景?

Python怎么调成黑色背景? 随着人们对代码编辑器的要求越来越高,许多开发者都喜欢在黑色背景下编写代码。不仅仅是视觉审美方面考虑,黑色背景对眼睛的伤害也比浅色背景要小得多。本篇文章将介绍如何在Python中调整为黑色背景 介绍 默认情况…

[C++刷题之旅]反转链表

🌸心有所向,日复一日,必有精进 🌸专栏:C刷题之旅 🌸作者:早凉 目录 题目一:反转链表 【题目链接】 【题目描述】 【解题思路】 【代码实现】 进阶:链表中指定区间…

【异步】Futurn、FutureTask、CompletionService、CompletableFuture

1. Callable 在这篇文章中 【Thread】线程的基本概念及创建方式(一),我们知道创建线程的几种方式。其中,有两个是通过接口来实现的:Runnable、Callable。它们的区别如下: Runnable 接口中的方法是没有返回…

代码审计——XXE详解

为方便您的阅读,可点击下方蓝色字体,进行跳转↓↓↓ 01 漏洞描述02 审计要点03 漏洞特征04 漏洞案例05 修复方案 01 漏洞描述 XXE(XML External Entity Injection)是一种针对XML终端实施的攻击,漏洞产生的根本原因就是…

chatgpt赋能python:Python怎么调整行距

Python怎么调整行距 在Python中,我们可以使用不同的方法来调整文本行距。 在这篇文章中,我们将讨论最常用的两种方法:使用文本编辑器和使用Python代码。 使用文本编辑器 许多文本编辑器都具有设置行距的选项。 这通常在“格式”或“段落”…

SpringBoot + Mybatis Plus 实现的瀑布内容管理系统、CMS建站系统

瀑布内容管理系统 瀑布内容管理系统,采用SpringBoot Apache Shiro Mybatis Plus Thymeleaf 实现的内容管理系统(附带权限管理),是搭建博客、网站的不二之选。 项目介绍 PB-CMS,致力于开发最精简、实用的CMS管理系统,适合搭建…

chatgpt赋能python:Python如何访问手机:探索移动端SEO优化的新途径

Python如何访问手机:探索移动端SEO优化的新途径 随着移动互联网的快速发展,移动端成为了各大搜索引擎的竞争焦点。对于SEO优化工程师而言,探索移动端SEO优化的新途径显得尤为关键。而Python作为一种强大的编程语言,在移动端SEO优…

MM32F3273G8P火龙果开发板MindSDK开发教程21 - PWM的使用

MM32F3273G8P火龙果开发板MindSDK开发教程21 - PWM的使用 1、简述 开发版的LED灯连接PA1脚,而PA1可以映射TIM2_CH2,所以我们用通用定时器2的TIM2_CH2输出PWM到PA1脚,通过更改PWM的占空比,来改变LED的亮度。 2、LED灯的初始化…