20145318 《信息安全系统设计基础》第6周学习总结
2016-10-23 22:59
246 查看
20145318 《信息安全系统设计基础》第6周学习总结
教材学习内容总结
流水线化的处理器:
将每条指令的执行分解成五步,每个步骤由一个独立的硬件部分或者阶段来处理。指令步经流水线的各个阶段,且每个时钟周期有一条新指令进入流水线。所以处理器可以同时执行五条指令的不同阶段。程序员可见的状态:
Y86程序中的每条指令都会读取或者修改处理器状态中的某些部分。这称为程序员可见状态。Stat
程序状态的最后一个部分是状态码Stat,它表明程序执行的总体状态;它会指示是正常运行还是出现了某种异常。Y86
一个简单的、可以称之为IA32指令集的子集的指令集;只包括四字节整数操作,寻址方式比较少。指令编码长度从1——6字节不等。关于指令结构,每条指令的第一个字节表明指令的类型;这个字节分为两个部分,每部分四位:高四位是代码部分(0——0xB),第四位是功能部分。这里补充一些缩写:立即数(i),寄存器(r)、存储器(m)。指令附加的寄存器指示符字节依次是数据源(如果是立即数,把这一位设置成0xf)、目的寄存器/基址寄存器。有些指令需要附加四字节的常数字,采用小端法(倒序)编码
stat代码可能取值反应了机器的不同状态
AOK:正常操作(除此之外的任何状态都会使得处理器停止执行指令)HLT:处理器执行halt指令
ADR:遇到非法地址2015/10/14 17:16:25
INS:遇到非法指令
多路复用电路(MUX)
根据输入控制信号的值,从一组不同的数据信号中选出一个。算术/逻辑单元(ALU)
根据控制输入的设置(0,1,2,3),电路会对数据输入执行不同的算数或者逻辑操作(+,-,&,^)。时序电路
有状态并且在这个状态上进行计算的系统时钟寄存器&随机访问存储器
时钟寄存器存储单个位或者字。时钟信号控制寄存器加载输入值随机访问存储器存储多个字,用地址来选择该读入或者该写哪个字
处理操作的阶段
取指:从寄存器读取指令字节,地址为程序计数器的值。计算下一条指令地址等于PC中的值加上已取出指令的长度译码:从寄存器文件中最多读出两个操作数
执行:ALU执行指明的操作、引用的有效地址或者是修改栈指针
访存:将数据写入存储器或者从存储器读出数据
写回:写两个结果到寄存器文件
更新PC:将PC设置成下条指令地址
关于一些指令的处理步骤
irmovl指令的处理与rrmovl类似,但是因为是长指令格式,所以程序计数器要加6指令call和ret与之前的popl和pushl类似。对于指令call,我们要将valP也就是call之后的那条指令的地址压入栈中在更新PC阶段,将PC设置为valC,也就是调用目的地
截图
学习进度条
参考资料
《深入理解计算机系统V2》学习指导...
相关文章推荐
- 20145318 《信息安全系统设计基础》第3周学习总结
- # 学号20145220 《信息安全系统设计基础》第6周学习总结
- 20145209 《信息安全系统设计基础》第6周学习总结
- 20145313张雪纯《信息安全系统设计基础》第6周学习总结
- 20145337 《信息安全系统设计基础》第6周学习总结
- 20145318 《信息安全系统设计基础》第5周学习总结
- 20145315 《信息安全系统设计基础》第6周学习总结
- 20145223《信息安全系统设计基础》第6周学习总结
- 20145325张梓靖 《信息安全系统设计基础》第6周学习总结
- 20145214 《信息安全系统设计基础》第6周学习总结
- 20145312 《信息安全系统设计基础》第6周学习总结
- 20145305 《信息安全系统设计基础》第6周学习总结
- 20145318 《信息安全系统设计基础》第5.5周学习总结
- 20145207 《信息安全系统设计基础》第6周学习总结
- 20145318 《信息安全系统设计基础》第1周学习总结
- 20145209 《信息安全系统设计基础》第6周学习总结
- 20145202 《信息安全系统设计基础》第6周学习总结(1)
- 学号 《信息安全系统设计基础》第6周学习总结(一)
- 20145217《信息安全系统设计基础》第6周学习总结
- 20145233 《信息安全系统设计基础》第6周学习总结