2017-2018-1 20155220 《信息安全系统设计基础》第五周总结
- ISA:定义了处理器状态,指令的格式,每条指令对状态的影响。
gcc -O1 -S text.c
-
-01
表示使用第一级优化。优化的级别与编译时间和最终产生代码的形式都有关系,一般认为第二级优化-02 是较好的选择。 -
执行汇编命令:
gcc –s xxx.c –o xxx.s
-
反汇编命令:
objdump –d xxx
-
64位处理器得到32代码的命令:
gcc –m32 –s xxx.c
-
访问信息
- 三种操作数
- 数据传送指令
- 数据传送示例
- 局部变量通常保存在寄存器中;
- 寄存器访问比存储器访问要快的多。
-
条件码
- CF:进位标志
- ZF:零标志
- SF:符号标志
- OF:溢出标志
-
访问条件码:根据条件码的某个组合,将一个字节设置为0或1。
SET指令根据t=a-b的结果设置条件码;
可以条件跳转到程序的某个其他部分;
可以有条件的传送数据。 -
jump指令
直接跳转:后面跟标号作为跳转目标
间接跳转:*后面跟一个操作数指示符 -
循环结构的三种形式
- do-while:先执行循环体语句,再执行判断,循环体至少执行一次。
- while: 把循环改成do-while的样子,然后用goto翻译
- for: 把循环改成do-while的样子,然后用goto翻译
-
实现条件转移的方式:利用控制的条件转移。当条件满足时就,程序沿着一条执行路径进行,而当条件不满足时,就走另一路径。
教材学习中的问题和解决过程
代码托管
结对及互评
点评模板:
- 博客中值得学习的或问题:
- xxx
- xxx
- ...
- 代码中值得学习的或问题:
- xxx
- xxx
- ...
- 其他
本周结对学习情况
- [结对同学学号1](博客链接)
- 结对照片
- 结对学习内容
- XXXX
- XXXX
- ...
其他(感悟、思考等,可选)
xxx
xxx
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/0 | 2/2 | 5/5 | |
第二周 | 100/100 | 3/4 | 10/15 | |
第三周 | 100/200 | 4/5 | 20/35 | |
第四周 | 200/400 | 2/7 | 25/60 |