计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】
文章目录
- 前言
- 第一章 计算机组成原理 概述及各种码
- 1.1 计算机硬件的基本组成
- 1.1.1 存储器
- 1.1.2 运算器
- 1.1.3 控制器
- 1.2 计算机的工作过程
- 1.3 计算机的性能指标
- 1.4 各个字长区别与联系
- 第二章 数据的表示与运算
- 2.1 ASCII码
- 2.2 各种码
- 2.3 浮点数
- 总结
前言
给大家整理了一下计算机组成原理中的重点概念,以供大家期末复习和考研复习的时候使用。
参考资料是王道的计算机组成原理和西电的计算机组成原理。
第一章 计算机组成原理 概述及各种码
1.1 计算机硬件的基本组成
计算机硬件系统由运算器、存储器、控制器、输入、输出设备五大部件构成。
1.1.1 存储器
存储器分为主存储器和辅助存储器,CPU能够直接访问主存储器。主存储器中MAR(Memory Address Register)地址寄存器存放访存地址,MDR(Memory Data Register)数据寄存器存放从存储器中读或写的信息。现代CPU中MAR和MDR也在CPU中。
1.1.2 运算器
运算器用于进行算术运算和逻辑运算。最重要的部件为ALU(Arithmetic and Logical Unit)算数逻辑单元。运算器包括累加器ACC、乘商计算器MQ、操作数寄存器X、基址寄存器BR、程序状态寄存器PSW等。
1.1.3 控制器
控制器由程序计数器PC、指令寄存器IR和控制单元CU组成。PC用来存放当前欲执行指令的地址,IR用来存放当前的指令其内容来自于主存的MDR。
CPU包含ALU、通用寄存器组GPRs、标志寄存器PSW、控制器、指令寄存器IR、程序计数器PC、存储器地址寄存器MAR和存储器数据寄存器MDR。
1.2 计算机的工作过程
hello.c->hello.i通过预处理器cpp,包括展开头文件、条件编译、删除注释等 gcc-e
hello.i->hello.s通过编译器ccl,检查语法规范,完成编译等 gcc-s
hello.s->hello.o通过汇编器as,将汇编指令翻译成机器指令 gcc-c
hello.o->hello.out通过链接器ld,将数据段合并,地址回填生成可执行文件
取数指令:1、取指令 PC->MAR->M->MDR->IR 2、OP(IR)->CU 3、Ad(IR)->MAR->M->MDR->ACC
1.3 计算机的性能指标
CPU时钟周期:即主频的倒数,它是CPU中最小的时间单位
主频(CPU时钟频率) :主频的倒数是CPU时钟周期,对于同一个型号的计算机,其主频越高,完成指令的一个执行步骤所用的时间越短,执行指令的速度越快。
CPI :执行一条指令所需的时钟周期数
CPU执行时间=CPU时钟周期数/主频 =(指令条数 *CPI )/主频
CPU 的性能(CPU 执行时间)取决于三个要素:主频,每条指令执行所用的时钟周期数( CPI )、指令条数
1.4 各个字长区别与联系
机器字长:计算机能直接处理的二进制数据的位数,一般等于内部寄存器的大小,决定了计算机的运算精度。与ALU直接相关。
指令字长:一个指令字中包含的二进制代码的位数。
存储字长:一个存储单元存储的二进制代码的长度。等于MDR的位数, 它们都必须是字节的整数倍。
数据字长:数据总线一次能传送信息的位数,它可以不等于MDR的位数。
第二章 数据的表示与运算
2.1 ASCII码
48=’0’ 65=’A’ 97=’a’ 大小写差32
2.2 各种码
补码、反码各种码知道怎么算就行,一两个例子练练手
我们懂的



2.3 浮点数
这里极其重要,公式我就不列举了,公式也是极其重要的,直接上题目










不仅要知道浮点数怎么来的更要知道浮点是的具体操作,与整数相比,浮点数是如何加减的,对比记忆




总结
这些题肯定都是做过的,有些类似的题我就不放答案了。相信这一章的干货也是满满,这些题有不会的评论区留言,我也可以解答=v=
相关文章:
计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】
文章目录 前言第一章 计算机组成原理 概述及各种码1.1 计算机硬件的基本组成1.1.1 存储器1.1.2 运算器1.1.3 控制器 1.2 计算机的工作过程1.3 计算机的性能指标1.4 各个字长区别与联系 第二章 数据的表示与运算2.1 ASCII码2.2 各种码2.3 浮点数 总结 前言 给大家整理了一下计算…...
基于transform的scale属性,动态缩放整个页面,实现数据可视化大屏自适应,保持比例不变形,满足不同分辨率的需求
文章目录 一、需求背景:二、需求分析:三、选择方案:四、实现代码:五、效果预览:六、封装组件: 一、需求背景: 数据可视化大屏是一种将数据、信息和可视化效果集中展示在一块或多块大屏幕上的技…...
Linux第67步_linux字符设备驱动_注册和注销
1、字符设备注册与注销的函数原型” /*字符设备注册的函数原型*/ static inline int register_chrdev(unsigned int major,\ const char *name, \ const struct file_operations *fops) /* major:主设备号,Limnux下每个设备都有一个设备号,设备号分…...
设计模式:软件工程的艺术
引言 设计模式是软件工程中一种解决常见问题的经验总结,是一套可复用的设计思想。它们提供了在特定情境下的解决方案,有助于构建可维护、灵活、可复用、可扩展的软件系统。设计模式是对软件设计中通用问题的抽象,提供了一种共享的语言和思维…...
试题 算法训练 数的潜能
资源限制 内存限制:256.0MB C/C时间限制:1.0s Java时间限制:3.0s Python时间限制:5.0s 问题描述 将一个数N分为多个正整数之和,即Na1a2a3…ak,定义Ma1*a2*a3*…*ak为N的潜能。 给定N,…...
OpenAI Triton 入门教程
文章目录 Triton 简介背景Triton 与 CUDA 的关系 Triton 开发样例样例一:Triton vector addition 算子Triton kernel 实现kernel 函数封装函数调用性能测试 样例二:融合 Softmax 算子动机Triton kernel 实现kernel 封装单元测试性能测试 样例三ÿ…...
【flask+python】利用魔术方法,更优雅的封装model类
定义model # Time :2024-2024/2/27-14:49 # Email :514422868qq.com # Author :Justin # file :user.py # Software :01-fishbook from app.model.base import Base from sqlalchemy import Column, Integer, SmallInteger, String from werkzeug.security …...
Qt程序设计-报警灯自定义控件实例
本文讲解Qt报警灯自定义控件实例。 实现功能 设置边框和内部颜色。 设置是否闪烁点亮。 添加的报警灯类 #ifndef LIGHT_H #define LIGHT_H#include <QWidget> #include <QDebug> #include <QPainter> #include <QTimer>class Light : public QWid…...
Linux之定时任务02
一、什么是crond Linux 中 crond 就是定时任务,即根据 crond 指定的时间,由系统按指定的时间,周期性,自动触发的事件。 crond 服务在默认的情况下会每分钟检查系统中是否有定时任务,如果有且符合触发条件,…...
PHP堆栈+errLog定位
调用堆栈(Call Stack)是一个记录了程序在运行时所有活动子例程的栈结构。它以函数调用的方式描述了程序的执行流程和调用关系。 在PHP中,我们可以通过打印PHP调用堆栈来辅助调试和定位代码中的问题。本文将介绍如何在PHP中打印调用堆栈&…...
【大数据】Flink SQL 语法篇(七):Lookup Join、Array Expansion、Table Function
《Flink SQL 语法篇》系列,共包含以下 10 篇文章: Flink SQL 语法篇(一):CREATEFlink SQL 语法篇(二):WITH、SELECT & WHERE、SELECT DISTINCTFlink SQL 语法篇(三&…...
【云原生】Spring Cloud Gateway的底层原理与实践方法探究
🎉🎉欢迎光临🎉🎉 🏅我是苏泽,一位对技术充满热情的探索者和分享者。🚀🚀 🌟特别推荐给大家我的最新专栏《Spring 狂野之旅:从入门到入魔》 🚀 本…...
springboot 实现本地文件存储
springboot 实现本地文件存储 实现过程 上传文件保存文件(本地磁盘)返回文件HTTP访问服务器路径给前端,进行效果展示 存储 服务端接收上传的目的是提供文件的访问服务,对于SpringBoot而言,其对静态资源访问提供了很…...
Python进阶学习:Pandas--查看DataFrame中每一列的数据类型
Python进阶学习:Pandas–查看DataFrame中每一列的数据类型 🌈 个人主页:高斯小哥 🔥 高质量专栏:Matplotlib之旅:零基础精通数据可视化、Python基础【高质量合集】、PyTorch零基础入门教程👈 希…...
Groovy - 大数据共享搜索配置
数据共享搜索列中配置了搜索列,相应的数据共享接口中也需要支持根据配置的字段搜索,配置实体时,支持搜索的入参code必须是searchKeys,且接口应该是需要支持分页(入参必须是 current、pageSize)的。current …...
第三节:Vben Admin登录对接后端login接口
系列文章目录 第一节:Vben Admin介绍和初次运行 第二节:Vben Admin 登录逻辑梳理和对接后端准备 第三节:Vben Admin登录对接后端login接口 第四节:Vben Admin登录对接后端getUserInfo接口 第五节:Vben Admin权限-前端控制方式 文章目录 系列文章目录前言一、Flask项目介绍…...
关于CSS 优先级布局应用的教程
在前端开发中,CSS 的优先级布局是非常重要的一部分。通过合理地应用 CSS 优先级,我们可以更加灵活地控制页面的布局和样式。本教程将向您介绍如何利用 CSS 优先级进行布局,并通过实例展示其应用。 1. 了解 CSS 优先级 在 CSS 样式表中&…...
vue2+elementui上传照片(el-upload 超简单)
文章目录 element上传附件(el-upload 超详细)代码展示html代码data中methods中接口写法 总结 element上传附件(el-upload 超详细) 这个功能其实比较常见的功能,后台管理系统基本上都有,这就离不开element的…...
目标检测新SOTA:YOLOv9问世,新架构让传统卷积重焕生机(附代码)
在目标检测领域,YOLOv9 实现了一代更比一代强,利用新架构和方法让传统卷积在参数利用率方面胜过了深度卷积。 继 2023 年 1 月 YOLOv8 正式发布一年多以后,YOLOv9 终于来了! 我们知道,YOLO 是一种基于图像全局信息进行预测的目标检测系统。自 2015 年 Joseph Redmon、Al…...
Javascript:输入输出
目录 一.前言 二.正文 1.输出 2.输入 3.字面量 概念: 三.结语 一.前言 Javascript作为运行浏览器的语言,对于学习前端的同学来说十分重要,那么从现在开始我们将开始介绍有关 Javascript。 二.正文 1.输出 document.write() : 向body内…...
PostgreSQL vs PolarDB:Checkpoint 调优策略深度对比(高频 vs 低频)
在一次 PostgreSQL 性能排查中,我遇到了这样一段日志:checkpoints are occurring too frequently (29 seconds apart) HINT: Consider increasing the configuration parameter "max_wal_size".而另一边,在 PolarDB 文档/实践中却看…...
python reno
## 关于Python Reno,你可能需要知道这些 如果你在Python社区里待得够久,大概会注意到一个现象:很多优秀的开源项目,比如OpenStack的那些组件,它们的版本发布说明(Release Notes)都长得特别规整。…...
Redis实战部署指南:从Windows桌面到Linux服务器的完整安装与验证
1. Redis入门:为什么你需要这份部署指南 Redis作为当下最流行的内存数据库之一,几乎成了高并发系统的标配。我第一次接触Redis是在一个电商秒杀项目中,当MySQL扛不住瞬时流量时,Redis轻松接住了每秒3万次的请求。这种性能表现让我…...
Netflix四月底推重新设计移动应用,竖版视频流能否拓展娱乐新体验?
Netflix移动应用四月底焕新,竖版视频流登场 Netflix于周四宣布,将在四月底推出重新设计的移动应用程序,其中一大亮点是包含竖版视频流。该公司在2026年第一季度致股东的财报信中提及,此次重新设计旨在更好地体现不断拓展的娱乐内容…...
AI Agent Harness Engineering 与边缘计算结合的实时控制应用
AI Agent Harness Engineering 与边缘计算结合的实时控制应用 ——以工业机器人“多材质小批量混流”自适应柔性抓取工作站为例一、引言 (Introduction) (一)钩子:从3个真实“痛点场景”看制造业的“卡脖子”焦虑 各位技术爱好者、智能制造工…...
5个常见设计痛点,Bebas Neue开源字体一站式解决方案
5个常见设计痛点,Bebas Neue开源字体一站式解决方案 【免费下载链接】Bebas-Neue Bebas Neue font 项目地址: https://gitcode.com/gh_mirrors/be/Bebas-Neue Bebas Neue是一款完全免费开源的显示字体,专为标题、标语和大尺寸文字设计,…...
洛洛王国-超时
输入样例: 在这里给出一组输入。例如: 4 1 10 2 3 1 5 2 7输出样例: 在这里给出相应的输出。例如: 12 20错误算法–依旧超时,因为每次取到增加数,就遍历一次增加 import java.io.BufferedReader; import java.io.IOException; imp…...
LX Music桌面版:三大痛点解决方案,让你的音乐体验焕然一新
LX Music桌面版:三大痛点解决方案,让你的音乐体验焕然一新 【免费下载链接】lx-music-desktop 一个基于 Electron 的音乐软件 项目地址: https://gitcode.com/GitHub_Trending/lx/lx-music-desktop 你是否厌倦了音乐平台的会员限制?是…...
游戏脚本自动化新思路:用按键精灵+百度OCR免费版,5分钟搞定动态文字识别
游戏脚本自动化进阶:动态文字识别的OCR实战指南 在MMORPG自动任务脚本开发中,最令人头疼的莫过于游戏UI的动态变化——任务对话框字体突然加粗、技能冷却提示颜色随机变化、多语言版本切换导致界面文字完全改变。传统基于像素比对的找图找色方案在这些场…...
STM32G0系列读保护功能实战:从代码实现到问题解决
1. STM32G0读保护功能入门指南 第一次接触STM32G0的读保护功能时,我也是一头雾水。这个功能就像给你的代码上了一把锁,防止别人通过调试接口读取芯片内部的内容。想象一下,你辛苦开发的算法被别人轻易复制,那感觉就像自家保险箱被…...
