计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】

本文主要是介绍计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

文章目录

  • 前言
  • 第一章 计算机组成原理 概述及各种码
    • 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=

这篇关于计算机组成原理-第一/二章 概述和数据的表示和运算【期末复习|考研复习】的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/760723

相关文章

SpringBoot分段处理List集合多线程批量插入数据方式

《SpringBoot分段处理List集合多线程批量插入数据方式》文章介绍如何处理大数据量List批量插入数据库的优化方案:通过拆分List并分配独立线程处理,结合Spring线程池与异步方法提升效率... 目录项目场景解决方案1.实体类2.Mapper3.spring容器注入线程池bejsan对象4.创建

PHP轻松处理千万行数据的方法详解

《PHP轻松处理千万行数据的方法详解》说到处理大数据集,PHP通常不是第一个想到的语言,但如果你曾经需要处理数百万行数据而不让服务器崩溃或内存耗尽,你就会知道PHP用对了工具有多强大,下面小编就... 目录问题的本质php 中的数据流处理:为什么必不可少生成器:内存高效的迭代方式流量控制:避免系统过载一次性

C#实现千万数据秒级导入的代码

《C#实现千万数据秒级导入的代码》在实际开发中excel导入很常见,现代社会中很容易遇到大数据处理业务,所以本文我就给大家分享一下千万数据秒级导入怎么实现,文中有详细的代码示例供大家参考,需要的朋友可... 目录前言一、数据存储二、处理逻辑优化前代码处理逻辑优化后的代码总结前言在实际开发中excel导入很

ShardingProxy读写分离之原理、配置与实践过程

《ShardingProxy读写分离之原理、配置与实践过程》ShardingProxy是ApacheShardingSphere的数据库中间件,通过三层架构实现读写分离,解决高并发场景下数据库性能瓶... 目录一、ShardingProxy技术定位与读写分离核心价值1.1 技术定位1.2 读写分离核心价值二

深度解析Python中递归下降解析器的原理与实现

《深度解析Python中递归下降解析器的原理与实现》在编译器设计、配置文件处理和数据转换领域,递归下降解析器是最常用且最直观的解析技术,本文将详细介绍递归下降解析器的原理与实现,感兴趣的小伙伴可以跟随... 目录引言:解析器的核心价值一、递归下降解析器基础1.1 核心概念解析1.2 基本架构二、简单算术表达

MyBatis-plus处理存储json数据过程

《MyBatis-plus处理存储json数据过程》文章介绍MyBatis-Plus3.4.21处理对象与集合的差异:对象可用内置Handler配合autoResultMap,集合需自定义处理器继承F... 目录1、如果是对象2、如果需要转换的是List集合总结对象和集合分两种情况处理,目前我用的MP的版本

深入浅出Spring中的@Autowired自动注入的工作原理及实践应用

《深入浅出Spring中的@Autowired自动注入的工作原理及实践应用》在Spring框架的学习旅程中,@Autowired无疑是一个高频出现却又让初学者头疼的注解,它看似简单,却蕴含着Sprin... 目录深入浅出Spring中的@Autowired:自动注入的奥秘什么是依赖注入?@Autowired

GSON框架下将百度天气JSON数据转JavaBean

《GSON框架下将百度天气JSON数据转JavaBean》这篇文章主要为大家详细介绍了如何在GSON框架下实现将百度天气JSON数据转JavaBean,文中的示例代码讲解详细,感兴趣的小伙伴可以了解下... 目录前言一、百度天气jsON1、请求参数2、返回参数3、属性映射二、GSON属性映射实战1、类对象映

从原理到实战解析Java Stream 的并行流性能优化

《从原理到实战解析JavaStream的并行流性能优化》本文给大家介绍JavaStream的并行流性能优化:从原理到实战的全攻略,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的... 目录一、并行流的核心原理与适用场景二、性能优化的核心策略1. 合理设置并行度:打破默认阈值2. 避免装箱

C# LiteDB处理时间序列数据的高性能解决方案

《C#LiteDB处理时间序列数据的高性能解决方案》LiteDB作为.NET生态下的轻量级嵌入式NoSQL数据库,一直是时间序列处理的优选方案,本文将为大家大家简单介绍一下LiteDB处理时间序列数... 目录为什么选择LiteDB处理时间序列数据第一章:LiteDB时间序列数据模型设计1.1 核心设计原则