自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(47)
  • 问答 (1)
  • 收藏
  • 关注

原创 计算机组成原理 —— 知识结构导图及目录索引

一、计算机系统概述(1.1)发展历程(1.2)性能指标(1.3)层次结构——(1.3.1)硬件系统——(1.3.2). 软件系统——(1.3.3)工作过程、五级层次结构二、数据的表示和运算(2.1)数制与编码——(2.1.1)进制的转换——(2.1.2)BCD码——(2.1.3)字符和字符串——(2.1.4)校验码(2.2)定点数的表示和运算——(2.2.1)无符号...

2019-07-18 08:19:03 3202

原创 指令系统 —— CISC和RISC

一、CISC(Complex Instruction Set Computing)设计思路:一条指令完成一个复杂的基本功能。代表:x86架构,主要用于笔记本、台式机等二、RISC(Reduced Instruction Set Computing)设计思路:一条指令完成一个基本“动作”;多条指令组合完成一个复杂的基本功能。代表:ARM架构,主要用于手机、平板等三、CISC和RISC的对...

2019-07-31 12:03:38 1846

原创 指令系统 —— 指令寻址

一、引入(数据存放)字长存储器寻址、大小端模式和边界对齐补充:大小端模式和边界对齐补充:存储器寻址二、指令寻址方式存储器寻址指的是存储器如何定位到某一个存储单元。而指令的寻址方式是指寻找指令或操作数的有效地址的方式,即确定本条指令的数据地址及下一条待执行指令的地址的方法。两者的主体不同。指令中的地址码字段并不代表操作数的真实地址,这种地址称为形式地址(A)。形式地址结合寻址方式...

2019-07-31 11:52:30 1600

转载 指令系统 —— 指令格式

一、指令的定义指令是指示计算机执行某种操作的命令,是计算机运行的最小功能单位。一台计算机的所有指令的集合构成该机的指令系统,也称指令集。指令的长度是指一条指令中所包含的二进制代码的位数,因为主存一般是按字节编址的,所以指令的长度一般为字节的整数倍指令长度与机器字长没有固定的关系,它可以等于机器字长,也可以大于或小于机器字长。根据指令长度与机器长度的大小关系,可以把指令分为单字长指令半字...

2019-07-30 11:08:25 5637

原创 内存管理 —— 虚拟存储的基本概念

页内虚拟存储器页的大小是固定的段式虚拟存储器段的大小不固定段页式虚拟存储器把程序按逻辑结构分段,每段再划分为固定大小的页,主存空间也划分为大小相等的页,程序对主存的调入、调出仍以页为基本传送单位。每个程序对应一个段表,每段对应一个页表。虚拟地址:段号+段内页号+页内地址...

2019-07-29 15:09:46 2531 1

原创 Cache —— 替换算法和写策略

一、替换算法在采用全相联映射和组相联映射方式时,从主存向 Cache 传送一个新块,当 Cache 中的空间被占满时,就需要使用替换算法置换 Cache行。而采用直接映射则不需要考虑替换算法。随机算法(RAND):随机地确定替换的Cache块。它的实现比较简单,但没有依据程序访问的局部性原理,故可能命中率较低。先进先出算法(FIFO):选择最早调入的行进行替换。它比较容易实现,但也没有依据...

2019-07-27 16:47:32 5003

原创 Cache —— Cache和主存的映射方式

一、地址映射和地址变换地址映射:地址映射是一种规则,它指明了把主存地址空间映射到Cache地址空间所用的规则,即把存放在主存中的程序按照某种规则装入Cache。由于Cache的块数比主存块数少得多,因此需要加入 主存字块标记 和 字块内地址地址变换:地址变换是一个过程,它是指CPU在访存时,将主存地址按映射规则换算成Cache地址的过程。二、全相联映射可以把主存数据块装入 Cache 中...

2019-07-26 22:16:16 15648 14

原创 Cache —— 局部性原理和工作原理

一、程序访问的局部性原理程序访问的局部性原理包括时间局部性和空间局部性。空间局部性:在最近的未来要用到的信息(指令和数据),很可能与现在正在使用的信息在存储空间上是邻近的时间局部性:在最近的未来要用到的信息,很可能是现在正在使用的信息高速缓冲技术iu是利用程序访问的局部性原理,把程序中正在使用的部分存放在一个高速的、容量较小的Cache中,使CPU的访存操作大多数针对Cache进行,从...

2019-07-26 14:48:36 12310

原创 存储器与CPU的协同工作 —— 双端口RAM和多模块存储器

一、双端口RAM双端口RAM是一种空间并行技术,它是指同一个存储器有左右两个独立的端口,分别具有两组相互独立的地址线、数据线和读写控制线,允许两个独立的控制器同时异步地访问存储单元。当两个端口的地址不相同时,在两个端口上进行读写操作一定不会发生冲突。当两个端口同时存取存储器的同一地址单元时,会有以下几种情况两个端口不同时对同一地址单元存取数据。两个端口同时对同一地址单元读出数据。两...

2019-07-25 23:56:28 2650 2

原创 主存与CPU的连接 —— 连接原理和片选方式

一、连接原理主存储器通过数据总线、地址总线和控制总线与CPU连接数据总线的位数与工作频率的乘积正比于数据传输率地址总线的位数决定了可寻址的最大内存空间控制总线(读/写)指出总线周期的类型和本次输入/输出操作完成的时刻合理选择存储芯片:通常选用ROM存放系统程序、标准子程序和各类常数、RAM则是为用户编程而设置的地址线的连接:CPU的地址线数往往比存储芯片的地址线数多。CPU...

2019-07-25 17:31:25 12076

原创 主存与CPU的连接 —— 主存容量的扩展

一、位扩展法二、字扩展法字扩展是指增加存储器中字的数量,而位数不变。采用字扩展时,各芯片连接地址线的方式相同,连接数据线的方式也相同,但在某一时刻只需选中部分芯片,所以通过片选信号CS或采用译码器设计连接到相应的芯片。如图所示,用 4三、字位同时扩展字位同时扩展是指既增加存储字的数量,又增加存储字长。采用字位同时扩展时各芯片连接地址线的方式相同,但连接 数据线 的方式不同,而且需...

2019-07-25 12:09:11 2825 4

转载 数制和编码 —— 大小端模式和边界对齐

一、大端模式和小端模式计算机的字节顺序模式分为大端数据模式和小端数据模式,它们是根据数据在内存中的存储方式来区分的Little-Endian 就是低位字节存放在内存的低地址端,高位字节存放在内存的高地址端。Big-Endian 就是高位字节存放在内存的低地址端,低位字节存放在内存的高地址端。举一个例子,比如数字0x12 34 56 78在内存中的表示形式为:(1)大端模式(正序):...

2019-07-25 11:22:45 1255

原创 存储器的基本概念 —— 存储器的基本结构和寻址

一、存储器的基本结构二、寻址主存各存储单元的地址空间是由单元地址号来表示的,而地址总线是用来指出存储单元地址号的,根据该地址可读出或写入一个存储单元。通常计算机系统既可按字寻址,又可按字节寻址。(1)按字节进行寻址存放一个字节的单元,称为字节存储单元(1B),相应的地址称为字节地址。每一个存储字包含4个可独立寻址的字节。(2)按字进行寻址存放一个机器字的存储单元,通常称为字存储单...

2019-07-24 09:18:09 2838

原创 半导体存储器 —— 译码驱动方式

一、半导体存储芯片的基本结构二、74138译码器A、B、C为译码地址输入端;G1、G2A、G2BG_1、G_{2A}、G_{2B}G1​、G2A​、G2B​ 为选通端,Y0 Y7Y_0~Y_7Y0​ Y7​ 为译码输出端(低电平有效)。当选通端 G1G_1G1​ 为高电平,另两个选通端 G2A、G2BG_{2A}、G_{2B}G2A​、G2B​ 为低电平时,才可以将地...

2019-07-21 09:47:16 5727

原创 半导体存储器 —— SRAM、DRAM和ROM

一、SRAM的工作原理通常把存放一个二进制位的物理器件称为存储元,它是存储器的最基本的构件。地址码相同的多个存储元构成一个存储单元,若干个存储单元的集合构成存储体。静态随机存储器(SRAM)的存储元是用双稳态触发器(六管MOS)来记忆信息的,SRAM具有以下几个特点如果电源被切断,原来的保存信息便会丢失即使信息被读出后,它仍保持其原状态而不需要再生(非破坏性读出)(1)SRAM的读周...

2019-07-21 09:45:23 5624 1

转载 存储器的基本概念 —— 存储器的分类、性能指标和层次化结构

一、分类(1)按存储介值进行分类磁表面存储器(磁盘;磁带)磁芯存储器半导体存储器(MOS型半导体存储器,具有高集成度的特点;两极性半导体存储器,具有高速的特点)光存储器(光盘)(2)按在计算机中的作用(层次)分类主存:又称为内存,用来存放计算机运行期间所需的大量程序和数据,CPU可以直接随机地对其进行访问,也可以和Cache及辅助存储器交换数据。辅助存储器:...

2019-07-20 21:23:06 9307

原创 算术逻辑单元 —— 串行加法器和并行加法器

一、一位全加器全加器的逻辑表达式如下:和表达式:Si=Ai⊕Bi+⊕Ci−1(Ai、Bi、Ci−1中有奇数个1时,Si=1,否则Si=0)S_i=A_i⊕B_i+⊕C_{i-1}(A_i、B_i、C_{i-1}中有奇数个1时,S_i=1,否则S_i=0)Si​=Ai​⊕Bi​+⊕Ci−1​(Ai​、Bi​、Ci−1​中有奇数个1时,Si​=1,否则Si​=0)进位表达式:Ci=AiBi+(A...

2019-07-18 18:04:43 27175 4

原创 算术逻辑单元 —— ALU的功能与结构

ALU是一种功能较强的组合逻辑电路,它能进行多种算术运算和逻辑运算。ALU的基本结构如下图最简单的ALU是四位的,如下图所示,74181为4位并行加法器,其4位进位是同时产生的用4片74181芯片可以组成16位ALU,其片内进位是快速的,但片间进位是逐片传递的,即组内并行、组间串行,是单级先行进位。若把16位ALU中的每四位作为一组,将74181与74182芯片配合,用类似位间快速进位...

2019-07-18 17:32:01 25492

转载 计算机系统概述 —— 工作过程、五级层次结构

一、工作过程把程序和数据装入主存储器从程序的起始地址运行程序用程序的首地址从存储器中取出第一条指令,完成指令后计算下一条指令的地址用新得到的指令地址继续读出第二条指令并执行,直到程序结束为止二、五级层次结构...

2019-07-17 20:12:58 1936

原创 计算机系统概述 —— 硬件系统

一、冯 . 诺依曼结构冯诺依曼结构,提出了 “存储程序” 的概念。“存储程序” 的概念是指将指令以代码的形式事先输入计算机的主存储器,然后按其在存储器中的首地址执行程序的第一条指令,以后就按该程序的规定顺序执行其他指令,直到程序执行结束。计算机硬件系统由运算器、存储器、控制器、输入设备和输出设备组成指令和数据以同等地位存储在存储器中,并可按地址寻访指令和数据均用二进制代码表示指令由操作...

2019-07-17 20:09:05 771

原创 计算机组成原理 —— 发展与分类

一、计算机硬件的发展二、计算机的分类与发展方向(1)根据计算机的实现和用途进行分类(2)根据计算机指令和数据流进行分类单指令流&单数据流(SISD):冯诺伊曼体系结构单指令流&多数据流(SIMD):阵列处理器、向量处理器多指令流&单数据流(MISD):实际上不存在多指令流&多数据流(MIMD):多处理器、多计算机...

2019-07-17 16:55:53 514

原创 浮点数的运算 —— 浮点数的加减运算

阶码运算和尾数运算分开进行。浮点数的加减运算一律采用补码。真值到机器数的转换对阶尾数加减规格化舍入溢出判断

2019-07-15 15:20:02 3803 1

原创 浮点数表示 —— IEEE754 标准

IEEE754 标准的浮点数(除临时浮点数外,临时浮点数又称为扩展精度浮点数,无隐含位),尾数用采取隐藏位策略的原码表示,阶码用移码表示的浮点数。对于规格化的二进制浮点数,数值的最高位总是1(原码规格化数的尾数最高位一定是1),为了能使尾数多表示一位有效位,将这个 1 隐含,因此尾数数值实际上是 n+1 位。偏置值为 2k−1−12^{k-1}-12k−1−1(-1是为了配合尾数)...

2019-07-14 22:48:05 1582

原创 浮点数的表示 —— 基本格式、规格化、表示范围

一、浮点数的表示格式浮点数表示法是指以适当的形式将比例因子表示在数据中,让小数点的位置根据需要而浮动。这样,在位数有限的情况下,既扩大了数的表示范围,又保持了数的有效精度。阶码:阶码是整数,阶符和 m 位阶码的数值部分共同反映 浮点数的表示范围及小数点的实际位置 ,常用移码或补码表示。IEEE754标准中采用移码的表示形式。尾数:数符表示浮点数的符号,尾数的数值部分的位数 n 反映浮点...

2019-07-14 22:15:04 66411 19

转载 数据的表示和运算 —— 定点表示和浮点表示的区别

定点表示和浮点表示的区别(1)数值的表示范围若定点数和浮点数的字长相同,则浮点表示法所能表示的数值范围将远远大于定点表示法。(2)精度所谓精度,是指一个数所含有效位的尾数。对于字长相同的定点数和浮点数来说,浮点数虽然扩大了数的表示范围,但精度也随之下降。(3)数的运算浮点数包括阶码和尾数两部分,运算时不仅要做尾数的运算,还要做阶码的运算,而且运算结果要求规格化,所以浮点运算比定点运算复...

2019-07-14 22:09:53 4410

原创 定点数的运算 —— 原码、补码的除法运算

一、引入我们按照常规的方法进行除法运算,计算机需要解决两个问题:①被除数和除数的大小比较;② 每次计算余数位数不断扩大。因此,我们提出了原码恢复余数法、原码不恢复余数法、补码加减交替法。二、原码恢复余数法符号位与数值位分开求,商符由两个数的符号位“异或”形成题目步骤一被除数 x 和除数 y 均取绝对值参加运算符号位为 xs⊕ysx_s⊕y_sxs​⊕ys​计算除数y的绝...

2019-07-14 01:15:32 7141 4

原创 定点数的运算 —— 原码、补码的乘法运算

一、引入首先,我们按照平常的计算方法进行计算(如下图所示),可以很容易的得到了结果。但这却要求计算机提供多个存储空间(如蓝色方框内容所示)存储中间结果和最终结果,浪费了资源,是不可取的。因此,提出了原码一位乘法和补码一位乘法。二、原码一位乘法原码一位乘法的特点是:符号位与数值位分开求,乘积符号由两个数的符号位“异或”形成,而乘积的数值部分则是两个数的绝对值相乘之和。题目步骤一被...

2019-07-12 12:44:15 18351 1

原创 数值的表示和运算 —— 强制类型转换

一、无符号数和有符号数之间的转换强制类型转换的结果保持位值不变,仅改变了解释这些位的方式(1)有符号数转换为无符号数int man(){ short x=-4321; unsigned short y=(unsigned short)x;}输出结果为 x=-4321,y=61215(2)无符号数转换成有符号数int main(){ unsigned short 655...

2019-07-10 15:37:54 2354

原创 定点数的计算 —— 符号扩展、溢出判断

一、符号扩展定点数表示的数转换成具有不同位数的某种表示形式。对于正数,新表示形式的所有附加位都用0进行填充对于负数原码的所有附加位都用0进行填充反码的所有附加位都用1进行填充补码的所有附加位都用1(对于整数)或0(对于小数)进行填充二、溢出判断方法一:采用一位符号法当参加操作的两个数符号相同,结果又与原操作数符号不同,则表示结果溢出。方法二:采用双符号位最高位符号...

2019-07-10 15:09:37 8879 1

原创 定点数的运算 —— 逻辑移位、算术移位、循环移位

一、逻辑移位逻辑移位的对象是无符号数,移位规则:逻辑左移时,高位移丢,低位添0;逻辑右移时,低位移丢,高位添0二、算术移位算术移位的对象是有符号数,在移位的过程中符号位保持不变。三、循环移位(a)不带进位的循环右移:操作数循环右移位,空出的高位部分由移出的低位部分来填充。同时,CF中只保存最后一次移出的那一位的内容(b)带进位的循环右移:操作数连同CF位循环右移,用原CF的值...

2019-07-10 13:57:42 16498 4

转载 定点数的运算 —— 原码、补码的加减法运算

一、原码的加减法运算加法规则:先判断符号位,若相同,则绝对值相加,结果符号位不变;若不同,则做减法,绝对值大的数减去绝对值小的数,结果符号位与绝对值大的数相同减法规则:减数符号取反,然后按加法规则进行计算以 14-14 为例:二、补码的加减法运算符号位要作为数的一部分一起参加运算,符号位产生的进位要丢掉逢二进一参与运算的两个操作数均用补码表示...

2019-07-09 21:47:28 22638 3

原创 有符号数的表示 —— 原码、反码、补码、移码

一、原码用机器数的最高位表示该数的符号,其余的各位表示数的绝对值二、反码纯小数反码纯整数反码三、补码补码的优点是:易于进行加减运算纯小数补码纯整数补码四、移码移码常用来表示浮点数的阶码,它只能表示整数。移码中的逗号不是小数点,而是表示左边一位是符号位。移码中的符号位规律与原码、补码、反码相反,1表示正数,0表示负数同一个真值的移码和补码仅...

2019-07-09 21:29:15 3523

原创 定点数的表示 —— 无符号数、有符号数、定点小数、定点整数

一、无符号数整个机器字长的全部二进制位均为数值位,没有符号位,相当于数的绝对值。n位的无符号数表示范围为:000 ~ 2n−12^n-12n−1二、有符号数有符号数用“0”表示“正”号,用“1”表示“负”号。有符号数的机器表示有原码、补码、反码和移码。三、定点小数和定点整数定点表示即约定机器数中的小数点位置是固定不变的。根据小数点固定的位置不同可以分为定点小数和定点整数。...

2019-07-09 20:46:15 17092 6

原创 计算机组成原理 —— 进制的转换

一、十进制转换成任意进制数(以二进制为例)将(75.3)10(75.3)_{10}(75.3)10​转换成二进制(1)取整数部分故(75)10=(1001011)2(75)_{10}=(1001011)_2(75)10​=(1001011)2​(2)取小数部分故(0.3)10=(0.01001...)2(0.3)_{10}=(0.01001...)_2(0.3)10​=(0.0100...

2019-07-09 08:19:02 1265

原创 BCD码 —— 8421码,余3码,2421码

通常采用4位二进制数表示一位十进制数中的0~9这10个数码。这种编码方法使二进制数和十进制数之间的转换得以快速进行。但4位二进制数可以组合出16种代码,故必有6种状态为冗余状态一、8421码从1011到1111这6个为无效码,当运算结果落于这个区间时,需要将运算结果加上6二、余3码三、2421码大于等于5的4位二进制数中最高位为1,小于5的最高位为0...

2019-07-09 08:17:03 34716 4

转载 计算机组成原理 —— ASCII码、汉字的表示和编码

一、ASCII码二、汉字的表示和编码汉字的编码包括汉字的输入编码、汉字内码、汉字字形码区位码和国标码都是输入码,它们和汉字内码的关系如下国标码=(区位码)16+2020H国标码=(区位码)_{16}+2020H国标码=(区位码)16​+2020H汉字内码=(国标码)16+8080H汉字内码=(国标码)_{16}+8080H汉字内码=(国标码)16​+8080H三、字符串的存放...

2019-07-09 08:15:24 4557

原创 差错控制 —— 码距和纠错编码(海明码)

一、奇偶校验码在数据传输之前,我们会求一次校验位,传输后,会求一次校验位,那么,在奇偶校验中,我们通过比较这两个校验位是否相同,若结果为1,则说明有奇数个错误,结果为0,则说明正确或者偶数个错误。二、海明码海明码是一种多重奇偶校验码,有效信息位中加入几个校验位形成海明码,并把海明码的每个二进制位分配到几个奇偶校验组中。当某一位出错后,就会引起有关的几个校验位的值发生变化,这不但可以发现错...

2019-07-09 08:12:14 7872

原创 计算机组成原理 —— 基本概念

一、计算机的分类(1)根据计算机的实现和用途进行分类(2)根据计算机指令和数据流进行分类单指令流&单数据流(SISD):冯诺伊曼体系结构单指令流&多数据流(SIMD):阵列处理器、向量处理器多指令流&单数据流(MISD):实际上不存在多指令流&多数据流(MIMD):多处理器、多计算机二、计算机硬件的发展三、计算机的性能指标(1)机器字...

2019-07-08 14:59:20 1488

原创 查找 —— 散列表

一、定义顺序存储的结构类型需要一个一个地按顺序访问元素,当这个总量很大且我们所要访问的元素比较靠后时,性能就会很低。散列表是一种空间换时间的存储结构,是在算法中提升效率的一种比较常用的方式,但是所需空间太大也会让人头疼,所以通常需要在二者之间权衡。散列表可以 根据给定的关键字来计算出关键字在表中的地址二、哈希函数的种类(1)直接寻址法取关键字或关键字的某个线性函数值为散列地址。即 H(k...

2019-07-07 18:05:50 1075

原创 查找 —— B-树和B+树

一、定义B-树是一种特殊的平衡m叉排序树,要求所有叶节点在同一层。B-树中所有结点孩子结点个数的最大值称为 B-树 的阶,通常用 m 表示,从查找效率考虑,要求 m>=3一颗 m 阶的 B- 树,或为空树,或为满足下列特性的m叉树:树中每个结点至多有m棵子树;如果根结点不是叶子结点,则至少有 2 棵子树,对应 1 个关键字;除了根之外的所有非终端结点至少有 ⌈m/2⌉ 棵子树,对...

2019-07-05 23:43:39 518

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除