408 计算机组成原理 知识点总结

我在准备21年408考研的过程中,根据王道考研书的内容、linjiafengyang的总结和其它相关资料,将计算机组成原理的知识点总结如下。大家复制后可以根据自身需求增删知识点、打印成册以方便学习。其中一些公式和特殊符号可能无法显示,可以点击此处(csdn要积分)下载docx文件查看,也可以点这里下载(提取码:s2do)。

第1章 计算机系统概述

1.1 计算机发展历程

1)第一代计算机(1946-1957年)—— 电子管时代 :逻辑元件采用电子管,使用机器语言进行编程
2)第二代计算机(1958-1964年)—— 晶体管时代 :逻辑元件采用晶体管,软件开始使用高级语言,如Fortran
3)第三代计算机(1965-1971年)—— 中小规模集成电路时代 :逻辑元件采用中小规模集成电路,开始有了分时操作系统
4)第四代计算机(1972-现在)—— 超大规模集成电路时代 :逻辑元件采用大规模集成电路和超大规模集成电路,并产生了微处理器

摩尔定律
32位、64位指的是机器字长,是指计算机进行一次整数运算所能处理的二进制数据的位数。

电子计算机可分为电子模拟计算机和电子数字计算机。数字计算机又可按用途分为专用计算机和通用计算机。通用计算机又分为巨型机、大型机、中型机、小型机、微型机和单片机6类。

计算机按指令和数据流还可分为:
1) 单指令流和单数据流系统(SISD),也即冯诺依曼体系结构
2)单指令流和多数据流系统(SIMD),包括阵列处理器和向量处理器系统
3) 多指令流和单数据流系统(MISD),这种计算机实际上不存在
4)多指令流和多数据流系统(MIMD),包括多处理器和多计算机系统

1.2 计算机系统层次结构

硬件系统和软件系统共同构成了一个完整的计算机系统。对于某一个功能来说,其既可以用软件实现,也可以用硬件实现,则称为软硬件在逻辑上是等效的。

早期的冯诺依曼机的特点:
1)计算机硬件系统由 运算器、存储器、控制器、输入设备、输出设备 5大部件组成
2)指令和数据以同等地位存于存储器内,并可按地址寻访
3)指令和数据均用二进制代码表示
4)指令由操作码和地址码组成,操作码用来表示操作的性质,地址码用来表示操作数在存储器中的位置
5)指令在存储器内按顺序存放
6)早期的冯诺依曼机 以运算器为中心 ,输入/输出设备通过运算器与存储器传送数据

现代计算机已经发展为 以存储器为中心 ,使I/O操作尽可能地绕过CPU,直接在I/O设备和存储器之间完成,以提高系统的整体运行效率。

输入设备 :键盘、鼠标、扫描仪、摄像机等等
输出设备 :显示器、打印机
存储器 :主存储器和辅助存储器
主存储器的工作方式是按存储单元的地址进行存取的,称为按地址存取方式。(相联存储器是按内容访问的)
地址寄存器MAR用于寻址,其位数对应着存储单元的个数,MAR的长度与PC的长度相等。
数据寄存器MDR和存储字长相等。
MAR和MDR的位数分别为(地址码长度、存储字长)
注意:MAR和MDR虽然是存储器的一部分,但在现代CPU中却是存在于CPU中的,另外后文提到的高速缓存Cache 也是存在于CPU中。
运算器 :算术逻辑单元ALU、通用寄存器(累加器ACC、乘商寄存器MQ、操作数寄存器X、变址寄存器IX、基址寄存器BR)、程序状态寄存器PSW
控制器 :程序计数器PC、指令寄存器IR、控制单元CU

系统软件、应用软件
注意:数据库管理系统DBMS和数据库系统DBS是有区别的, DBMS是系统软件,而DBS一般由数据库、数据库管理系统、数据库管理员DBA和应用系统构成

机器语言是计算机唯一可以直接识别和执行的语言
汇编语言的程序必须经过一个称为 汇编程序 的系统软件的翻译,将其转换为计算机的机器语言后,才能在计算机的硬件系统上执行;
高级语言需要经过 编译程序编译 成汇编语言程序,然后经过 汇编操作 得到机器语言程序,或者 直接由高级语言程序翻译成机器语言程序

注意:(PC)指程序计数器PC中存放的内容,括号不能省略,即 (PC)+1->PC不能写成PC+1->PC

1.3 计算机的性能指标

机器字长是指计算机进行一次整数运算(即定点整数运算)所能处理的二进制数据的位数 ,一般等于内部寄存器的大小,字长越长,数的表示范围越大,计算精度就越高。

数据通路带宽 是指数据总线一次所能并行传送信息的位数。

吞吐量:系统吞吐量主要取决于主存的存取周期
响应时间:通常包括CPU时间(运行一个程序所花费的时间)与等待时间
CPU时钟周期:即主频的倒数,它是CPU中最小的时间单位
主频(CPU时钟频率) :主频的倒数是CPU时钟周期,对于同一个型号的计算机,其主频越高,完成指令的一个执行步骤所用的时间越短,执行指令的速度越快。
CPI :执行一条指令所需的时钟周期数
CPU执行时间,指运行一个程序所花费的时间

CPU执行时间=CPU时钟周期数/主频 =(指令条数 *CPI )/主频
CPU 的性能(CPU 执行时间)取决于三个要素:主频,每条指令执行所用的时钟周期数( CPI )、指令条数

MIPS:每秒执行多少百万条指令。MIPS=指令条数/(执行时间*10^6)=主频/CPI
MFLOPS:每秒执行多少百万次浮点计算,10^6
GFLOPS:每秒执行多少十亿次浮点计算,10^9
TFLOPS:每秒执行多少万亿次浮点计算,10^12
PFLOPS:每秒执行多少一千万亿次浮点计算,10^15
EFLOPS:每秒执行多少一百京次浮点计算,10^18
ZFLOPS:每秒执行多少十万京次浮点计算,10^21

1.5 常见问题和易混淆知识点

在逻辑功能上,软件和硬件是等效的 。在计算机系统中,许多功能既可以由硬件直接实现,也可以在硬件的配合下由软件实现。

翻译程序 是指把高级语言源程序翻译成机器语言程序(目标代码)的软件,可以分为两种:一种是 编译程序 ,将高级语言源程序一次全部翻译成目标程序,只要源程序不变,就无须重新编译,目标程序与体系结构相关,但仍不是计算机硬件能够直接执行的程序;另一种是 解释程序 ,翻译一句执行一句,并且不会生成目标程序。
汇编程序 把汇编语言源程序翻译成机器语言程序。

在计算机领域中,站在某一类用户的角度,如果感觉不到某个事物或属性的存在,即"看"不到某个事物或属性,则称为"对该用户而言,某个事物或属性是透明的"。 在CPU中,IR 、MAR 和 MDR对各类程序员都是透明的。

机器字长:计算机能直接处理的二进制数据的位数,机器字长一般等于内部寄存器的大小,它决定了计算机的运算精度。
指令字长:一个指令字中包含二进制代码的位数。
存储字长:一个存储单元存储二进制代码的长度。

第2章 数据的表示和运算

2.1 数制与编码

二进制转换为八进制和十六进制 :以小数点为界,其整数部分,从小数点开始往左数,将一串二进制数分为3位(八进制)一组或4位(十六进制)一组,在数的最左边根据需要加"0"补齐;对于小数部分,从小数点开始往右数,将一串二进制数分为3位(八进制)一组或4位(十六进制)一组,在数的最右边根据需要加"0"补齐。
八进制或十六进制转换为二进制 :略。
任意进制转换为十进制 :略
十进制转换为任意进制 :基数乘除法。对于整数部分用除基取余法;对于小数部分用乘基取整法。

注意:并不是每一个十进制小数都可以准确地用二进制表示,但任意一个二进制小数都可以用十进制小数表示。

真值

机器数:

#机器数题目不说默认是补码,特别是对于负数。

二进制编码的十进制数(BCD码):
8421码:设其各位的数值为b3、b2、b1、b0,则权值从高到低依次为8/4/2/1,则它表示的十进制数为D=8b3+4b2+2b1+1b0。如果两个8421码相加之和小于等于(1001),即(9),则不需要修正;如果相加之和大于等于(1010),即(10),则要加6修正
余3 码 :在8421码的基础上加上(0011)形成的,即每个数都多余"3"
2421码:权值由高到低分别为2/4/2/1,特点是大于等于5的4位二进制数中最高位为1,小于5的最高位为0。如5为1011而不是0101。

奇偶校验码 :在原编码上加一个校验位,它的码距等于2, 可以检测出一位错误(或奇数位错误),但不能确定出错的位置,也不能够检测出偶数位错误 ,增加的冗余位称为奇偶校验位。
奇校验码:整个校验码(有效信息位和校验位)中"1"的个数为奇数
偶校验码:整个校验码(有效信息位和校验位)中"1"的个数为偶数

海明(汉明)校验码:不但可以发现错位,还能指出错位的位置,为自动纠错提供了依据。
L-1=D+C且D≥C,即编码最小码距L越大,则其检测错误的位数D越大,纠正错误的位数C也越大,且纠错能力恒小于或等于检错能力。
信息位n和校验位 k应满足n+k≤2^k-1
求海明码的步骤(略)

循环冗余校验码(CRC) :在K为信息码后再拼接R位的校验码,整个编码的长度为N位

2.2 定点数的表示与运算

原码表示法 :用机器数的最高位表示该数的符号,其余的各位表示数的绝对值
纯小数的原码定义 :若字长为n+1,则原码小数的表示范围为-(1-2^-n)≤x≤1-2 ^-n
[x] = x,1>x≥0
[x] = 1-x = 1+|x|,0≥x>-1
纯整数的原码定义 :若字长为n+1,则原码小数的表示范围为-(2^n-1)≤x≤2 ^n-1
[x] = 0,x,2^n>x≥0
[x] = 2^n-x = 2 ^n+|x|,0≥x>-2 ^n
注意:真值零的原码表示有正零和负零两种形式:[+0]=00000, [-0]=10000

补码表示法
纯小数的补码定义 :若字长为n+1,则原码小数的表示范围为-1≤x≤1-2 ^-n
[x] = x,1>x≥0
[x] = 2+x = 2-|x|,0≥x>-1
纯整数的补码定义 :若字长为n+1,则原码小数的表示范围为-2^n≤x≤2 ^n-1
[x] = 0,x,2^n>x≥0
[x] = 2^(n+1)+x = 2 ^(n+1)-|x|,0≥x≥-2 ^n
注意:真值零的补码表示是唯一的:[+0]=[-0]=0.0000

由原码求补码、由补码求原码:
对于正数,补码与原码的表示相同。
对于负数,原码符号位不变,数值部分按位取反,末位加1.

反码表示法
纯小数的原码定义 :若字长为n+1,则原码小数的表示范围为-(1-2^-n)≤x≤1-2 ^-n
[x] = x,1>x≥0
[x] = 2-2^-n +x,0≥x>-1
纯整数的原码定义 :若字长为n+1,则原码小数的表示范围为-(2^n-1)≤x≤2 ^n-1
[x] = 0,x,2^n>x≥0
[x] = 2^(n+1)-1+x,0≥x>-2 ^n
注意:真值零的原码表示有正零和负零两种形式:[+0]=0.0000, [-0]=1.1111

移码表示法 :移码常用来表示浮点数的阶码,它只能表示整数。
[x] = 2^n+x(其中2 ^n>x≥-2 ^n,机器字长为n+1)
注意

  • 146
    点赞
  • 1310
    收藏
    觉得还不错? 一键收藏
  • 9
    评论
408计算机是一种通用计算机,属于微型机的范畴。它的组成原理符合计算机的发展历程。首先,408计算机采用的是第四代计算机的技术,即超大规模集成电路时代。这意味着它使用了大规模集成电路和超大规模集成电路,并且采用了微处理器。 其次,408计算机是由硬件系统和软件系统共同构成的。硬件系统包括电子元件(比如晶体管)和集成电路,用于实现计算机的各种功能和操作。而软件系统则是运行在硬件之上的程序和指令集,用于控制和管理计算机的操作。对于某一功能来说,它既可以用软件实现,也可以用硬件实现,这种等效性称为软硬件在逻辑上是等效的。 综上所述,408计算机是一种属于微型机范畴的通用计算机,它采用了超大规模集成电路技术和微处理器,并由硬件系统和软件系统共同构成。这样的设计使得408计算机能够高效地执行各种计算和处理任务。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* *2* *3* [408 计算机组成原理 知识点总结](https://blog.csdn.net/waaaa1999/article/details/118499143)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 100%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值