①正数的原码、反码、补码都相同。
②0的原码、反码、补码的表示以5位二进制数为例
0的原码有两种+000000-010000
0的反码有两种+000000-011111
0的补码只有一种+000000这样补码的表数范围比其它两种码
多了一个。
③负数的原码和反码、补码之间的转换。
负数的原码在符号位不变的前提下通过逐位求反得到反码通过求反加
1得到补码。
反过来在符号位不变的前提下负数的反码通过逐位求反可得到原码。
负数的补码通过再一次求补码的过程可得到原码。
3、补码加减法运算规则(重点必考)
[X+Y]补=[X]补+[Y]补
[X–Y]补=[X]补+[–Y]补
运算时符号位和数值位一样参加运算若符号位有进位产生则应将进
位丢掉后才得到正确结果。
[–Y]补的求法是对[Y]补连同符号位一起求反加1。
溢出的产生及判断方法
①符号比较法。
该法是根据参加运算的两个数的符号及运算结果的符号
来判断是否溢出。
若两个同号数相加结果必为同号数否则肯定溢出
若两个异号数相减结果必与被减数同号否则肯定溢出。
②双进位法。
设数值位的最高位向符号位的进位为C0符号位在运算中
向高一位的进位为C1若C0⊕C1=1则有溢出。
③双符号法又称变形符号码法。
该法是对参加运算的数在运算过程中
采用两个符号位同数值位一起参加运算若运算结果的双符号位不相同
则溢出。
所谓双符号位是指正数的符号位为00负数的符号位为11。
4、浮点数的运算和运算器
IEEE754标准与移码表示法(例题看懂,重点)
IEEE754的阶码用移码表示尾数用原码表示尾数的最高位整数位
权为2^0规格化为1且规定这一位隐含不给出以便尾数有更多的有效位具
有最高的精度。
.
移码表示法
将整数补码变为移码的方法是只要将补码的符号位取反即可。
第3章存储系统
1、存储器技术指标
①存储容量②存储速度③存储器可靠性④性价比
2、存储器的层次结构
储存器的层次结构主要体现在有cache-主存构成的高速缓冲存储系统和主存-辅存构成的虚拟存储系统。
目的是使存储系统发挥最大效率,最好性价比。
CPU(寄存器)、高速缓存(cache)、主存储器、辅助存储器(磁盘)
3、内存容量扩容(重点必考)P60
字扩展,位扩展,字位扩展。
会使用Intel2114芯片扩展存储器。
4、Cache系统工作原理
Cache的工作原理是基于程序访问的局部性。
5、地址变换与映像
1 全相联映像
全相联映像是指将内存和Cache按照固定的相同的大小进行分块。
内存的块和Cache的块可以任意对应,即内存的任何一块都可以映像到Cache的任何一块。
在Cache的存储空间被占满的情况下,也允许确实已被占满的Cache存储器中替换出任何一个旧块
2 直接映像
直接映像先将Cache分成若干块,每个块的大小相同,并对每个块进行编号。
同时根据Cache容量大小将内存分成若干区(页),每个区的容量都跟Cache的容量相同,然后对内存进行分块,每块的大小跟Cache块的大小相同,同样对区内的块进行编号。
映像时,内存的某个区的块只能保存在与其块号相同的Cache块中。
3 组相联映象
组相联映像实际上是直接映像和全相联映像的折中方案。
组相联映像方式先将Cache分成大小相同的若干区(组),对每个区按照直接映像的方式进行分块,并且编号,因此,Cache中有多个编号相同的块。
对内存按照Cache区的大小进行分页,再对每页按照Cache块的大小进行分块,每个内存块可以对应不同Cache区中的相同块号的块。
6、虚存工作原理
1 段式虚拟存储器
优点:
程序化的模块化性能好
缺点:
地址变换耗时,对辅存管理较为困难,主存利用率低
2 页式虚拟存储器
优点:
主存利用率高、页表简单、地址变换与映像速度较快
缺点:
模块化性能不好,占存储空间大
3 段页式虚拟存储器
优点:
模块化好,主存利用率高,对辅存管理容易
缺点:
查表速度低
第4章CPU机器控制器
名词解释:
指令周期:
CPU从内存取出一条指令并执行这条指令的时间总和。
机器周期:
CPU处理完成各种类型操作所花费的时间,通常用从内存读取一条指令字的最短时间来定义。
时钟周期:
时钟周期也称为振荡周期,定义为时钟频率的倒数。
时钟周期是计算机中最基本的、最小的时间单位。
1、CPU组成
传统CPU主要由控制器和运算器两大部件组成为了配合这两部分工作一般CPU内部还包含有一些寄存器。
控制器由程序计数器PC、地址寄存器AR、指令寄存器IR、指令译码器ID、时序产生器和操作控制器等部分组成。
运算器由算术逻辑部件ALU、累加器AC、数据缓冲寄存器、寄存器组和程序状态寄存器PSW组成它是数据加工处理部件。
运算器接受控制器的命令完成具体的数据加工任务。
2、指令周期
时钟信号CLK的周期长度称为时钟周期T一般是机器主频的倒数。
机器周期,又称为CPU周期,是微处理器完成各种类型操作所花费的时间,它由若干时钟周期T组成。
因此,时钟周期是处理操作的最基本的时间单位,它又被称为节拍脉冲或T周期。
通常用从主存中取出一条指令的最短时间来规定机器周期。
指令周期就是CPU从取指令到执行完一条指令的时间,它包括取指周期和执行周期两部分。
3、8086微处理器(重点)
1、系统总线包括地址总线(AB),数据总线(DB),控制总线(CB)
2、8086共有14个寄存器供系统使用它们分为(了解每个寄存器的作用,汇编部分经常用到P85)
通用寄存器(包括AX、BX、CX、DX等4个16位数据寄存器)、指针变址寄存器(包括SP、BP、SI和DI等4个16位寄存器)、控制寄存器(包括IP和Flag等两个16位寄存器)、段寄存器(包括CS、DS、SS、ES等4个16位段寄存器)等四类。
(大致了解每个寄存器作用)
3、8086有20根地址线,因此地址编号有20位物理地址,也就是可寻址的存储器空间位2^20=1MB。
4、8086对逻辑段按其存储内容和功能分为四类:
(汇编部分会用到,需了解)
代码段:
存储程序代码。
当前运行程序的代码段起始地址保存在代码段寄存器CS中。
数据段:
存储数据。
当前程序所读写的操作数的数据段起始地址,一般保存在数据段寄存器DS中。
堆栈段:
存储以堆栈方式读取的数据。
其起始地址保存在堆栈段寄存器SS中。
附加段:
存储辅助当前程序所读写的操作数据。
其起始地址保存在附加段寄存器ES中。
逻辑段之间允许部分重叠(一个段的起始地址在另一个段中)、完全重叠(两个段起始地址相同)、连续排列(一个段的起始地址紧挨着在另一个段末地址)、分离排列(两个段既不重叠也不连续)。
5、存储器中的逻辑地址和物理地址(务必理解)
某个存储单元在存储器中的位置可以用两种方法来表示:
一是逻辑地址,由16位段地址和16位段内偏移地址两部分组成,表示为:
段地址:
段内偏移地址
二是直接用20位物理地址表示。
二者之间的关系是:
物理地址=段地址×10H+段内偏移地址
例如,若逻辑地址为2000H:
17A8H,则对应的物理地址为
2000H×10H+17A8H=20000H+17A8H=217A8H
可见,具体计算时,只要将十六进制表示的段地址末尾添加个0,再与段内偏移地址相加即可。
程序中指令的逻辑地址,可用CS:
IP表示。
数据段中操作数的逻辑地址,可用DS:
EA(EA即段内偏移地址即有效地址)表示。
堆栈段中数据的逻辑地址,可用SS:
SP表示。
附加段中操作数的逻辑地址,可用ES:
EA表示。
要注意的是,一个物理地址所对应的逻辑地址不是唯一的。
例如物理地址为217A8H的存储单元的逻辑地址,也可以是:
2100H:
07A8H或者1B6AH:
6108H等等。
4、控制单元的设计
组合逻辑方式:
优点:
组合逻辑控制是用硬接线的方法实现,速度较快。
缺点:
组合逻辑控制器中无法实现新的逻辑操作功能
微程序方式
第5章指令系统
1、指令系统概述
1、指令的格式
一条指令通常由操作码(OperationCode)和操作数(Operand)两部分组组成。
2、操作码
指令的操作码是指用二进制编码表示的不同性质的操作,如加、减、乘、除、取数、存数等,每一种操作都有唯一对应的编码表示。
3、操作数的类型
根据操作数的存储位置不同,可将其分为立即数、寄存器数、存储器数三种类型。
立即数类型的操作数直接在指令中给出。
寄存器类型的操作数存储于通用寄存器中,指令中给出寄存器编号。
存储器类型的操作数存储于存储器单元中,指令中给出直接地址或间接地址。
二、寻址方式(P109详细了解,考一道指令纠错)
1、操作数寻址方式
2、指令寻址方式
习题5.3
(1)MOVAL,1000
答:
源操作数超出字节表数范围,可改为MOVAX,1000
(2)MOVBX,AL
答:
源和目的操作数类型不一致,可改为MOVBX,AX
(3)MOV[SI],800H
答:
源和目的操作数类型不明确,可改为MOVWORDPTR[SI],800H
(4)ADD[DI],[SI]
答:
源和目的操作数不能同为存储器操作数,可改为MOVAL,[SI]ADD[DI],AL
(5)MOVAX,COUNT[BX][BP]
答:
目的操作数寻址采用两个基址寄存器错误,可改为MOVAX,COUNT[BX][SI]
(6)SHLAX,2
答:
移位次数超过2及以上,不能直接用数值表示,必须用CL寄存器表示,可改为MOVCL,2SHLAX,CL
(7)MOVCS,AX
答:
CS寄存器不能作目的操作数