2017-2018-1 20155229 《信息安全系统设计基础》第七周学习总结
2017-2018-1 20155229 《信息安全系统设计基础》第七周学习总结
教材学习内容总结
Y86体系结构
- ①过程:定义指令集,寄存器标识符定义,编码。
- ②遇到异常时停止指令执行
- ③逻辑门,存储器和时钟等基础知识,同时介绍HCL语言,清晰明确的显示出所有候选条件,类似C语言switch语句
硬件结构
- SEQ:完全顺序执行,使用较少的硬件资源,需要信号向后传递,导致处理太慢;
- SEQ+:和SEQ相比在时钟周期开始时更新PC值,提前确定下条指令地址
- PIPE-:在SEQ+各阶段间加入流水寄存器,对信号重新排列,通过暂停方式处理数据冒险
- PIPE:在PIPE-基础上可以通过转发处理数据冒险,避免了停顿,提升吞吐量
教材学习中的问题和解决过程
-
问题一:X86与Y86程序
-
解决: - Y86和X86的区别在于,有的时候Y86需要两条指令来达到X86一条指令就可以达成的目的.
-
比如对于X86指令中的addl $4,%ecx这样的指令,由于Y86当中的addl指令不包含立即数,所以Y86需要先将立即数存如寄存器,即使用irmovl指令,然后再使用addl来处理加法运算.
-
Y86就是X86的一个缩减版,他的目的就是以简单的结构来实现一个处理器,帮助我们了解处理器的设计和实现.
-
问题二:硬件控制语言HCL,那个代码是如何控制硬件的呢?
-
解决:
高级语言会被编译成汇编语言,汇编语言就是机器指令的助记符,一条机器指令就是一个微程序,一个微程序可以分解成多条微指令,根据微指令就可以通过微程序控制器控制数据通路了
代码调试中的问题和解决过程
- 问题一:
- 在做实验楼实验时,一直无法汇编
asuml.yo
- 解决:我尝试make asuml.ys 突然间make asuml.yo就成功了,具体也不太清楚为啥
代码托管
本周的代码存在国密算法的代码,还有我不小心下载了yis环境的代码进入了这里面,所以这周的代码不能做任何参考。。。
上周考试错题总结
无
结对及互评
点评模板:
-
博客中值得学习的或问题:
-
代码中值得学习的或问题:
本周结对学习情况
- [20155225](博客链接)
- 结对照片
- 结对学习内容
- 第四章学习
- 实验二 国密算法的理解与学习
其他(感悟、思考等,可选)
- 被上次折磨的漏洞实验和虚拟机,最终还是选择重新装了虚拟机,希望以后不会再崩了。
- 本周在课上学习了程序的进程并发,正直操作系统课也上到这里,所以有将两者学到的知识融入起来进行学习。
- 本周自学的第四章,内容是在第三章的基础上进行了更深入的学习,内容较多,还需继续对其深入理解。
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 15篇 | 400小时 | |
第一周 | 20/20 | 1/ | 12/12 | |
第二周 | 42/62 | 1/2 | 8/20 | |
第三周 | 62/124 | 1/3 | 14/34 | |
第四周 | 61/185 | 1/4 | 10/44 | |
第五周 | / | 2/6 | 13/57 | |
第六周 | / | 2/8 | 17/74 | |
第七周 | / | 2/10 | 15/89 | |
尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。 | ||||
耗时估计的公式 | ||||
:Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。 |
-
计划学习时间:17小时
-
实际学习时间:15小时
-
改进情况:
(有空多看看现代软件工程 课件
软件工程师能力自我评价表)