2018-2019-1 20165228 《信息安全系统设计基础》第四周学习总结
Posted cloud795
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018-2019-1 20165228 《信息安全系统设计基础》第四周学习总结相关的知识,希望对你有一定的参考价值。
2018-2019-1 20165228 《信息安全系统设计基础》第四周学习总结
教材学习内容总结
Y86-64指令集体系结构
Y86程序中的每条指令都会读取或修改处理器状态的某些部分
程序员可见状态
- 15个程序寄存器(RF):每个寄存器存储一个64位,即8字节的字(即Y86-64指令长度)
- 3个条件码(CC):ZF(零标志位)/SF(符号标志位)/OF(溢出标志位)
程序状态(Stat)
- 程序计数器(PC):存放当前正在执行指令的地址,计算下一条指令的地址时,根据当前指令的编码长度计算。
内存(DMEM):很大的字节数组,用来存放程序和数据。
Y86-64指令
- Y86-64程序寄存器标识符:
- 寄存器标识符范围:0-0xE
- 程序寄存器的存储:寄存器文件
- 不应访问任何寄存器:用0xF表示
- Y86-64指令编码
- 编码长度:1字节~10字节
- 组成:1、一个单字节的指令指示符
2、一个单字节的寄存器指示符
3、一个八字节的常数字 - 各指令详细解释:
- halt指令:十六进制表示为00,占一个字节。执行时,使处理器停止。
- nop指令:十六进制表示为10,占一个字节。
- rrmovq rA,rB指令:十六进制表示为 20 rArB,占两个字节。
...
Y86-64指令集的功能码:高四位为代码部分,低四位为功能部分。
逻辑设计和硬件控制语言HCL
- 为实现一个数字系统需要三个重要的组成部分:
- 计算对位进行操作的函数的组合逻辑
- 存储位的存储单元
- 控制存储单元更新的时钟信号
- HCL与HDL的区分
- HCL:硬件控制语言
- HDL:硬件描述语言
- HCL表达式中的运算符:都只对单个字进行操作
- 与:AND用“&&”表示
- 或:OR用“||”表示
- 非:NOT用“!”表示
- 与、或、非三种逻辑门可以用一种与非门或者或非门实现
- 组合电路:多个逻辑门组合成网(必须无环)构成计算块,称为组合电路。
- 多个逻辑门组合时的限制:每个逻辑门的输入必须连接到下述选项之一,且两个或多个逻辑门的输出不能连接在一起。
1、一个系统输入
2、某个存储器单元的输出
3、某个逻辑门的输出 - HCL整数表达式
情况表达式:
算数/逻辑单元(ALU):加、减、与、异或
- 集合关系:
iexpr为被测试的值,iexpr1~iexprk为带匹配的值,均为正数表达式。
iexpr in { iexpr1,iexpr2,...,iexprk }
- 存储器和时钟
按位存储信息的设备 - 时钟寄存器:简称寄存器,存储单个位或字。Y86-64中使用是中寄存器保存程序计数器PC、条件代码CC和程序状态Stat
- 随机访问寄存器:简称内存,存储多个字。
- 寄存器
- 硬件寄存器:将其输入和输出的线连接到电路的其他部分。当时钟上升沿到来才会加载新的输入信号并输出,是电路不通部分中组合逻辑之间的屏障。
- 程序寄存器:CPU中为数不多的可寻址的字,这里的地址为寄存器ID,这些字通常都存在寄存器文件中。
- 寄存器组成:两个读端口、一个写端口、时钟
Y86-64的顺序实现
以上是关于2018-2019-1 20165228 《信息安全系统设计基础》第四周学习总结的主要内容,如果未能解决你的问题,请参考以下文章
2018-2019-1 20165228 《信息安全系统设计基础》第七周学习总结
2018-2019-1 20165228 《信息安全系统设计基础》第二周学习总结
2018-2019-1 20165228 《信息安全系统设计基础》第八周学习总结
2018-2019-1 20165228 苏祚堃《信息安全系统设计基础》第一周学习总结