20145314郑凯杰《信息安全系统设计基础》第5周学习总结 part A
在前四天的学习中,我主要对课本知识进行了总结,在本周后三天的学习过程中,我将进行实践并截图。
教材学习内容总结
教材第三章
X86 寻址方式经历三代:
- DOS时代的平坦模式,不安全,原因是没有区分用户空间和内核空间,
- 8086的分段模式:
- IA32的带保护模式的平坦模式
3.2 程序编码
命令gcc是Linux上默认的编译器,gcc -01 告诉编译器使用第一级优化。优化等级越高,程序运行的越快,编译时间越长,用调试工具调试程序越困难。但是,从得到程序性能方面考虑,第二级优化被认为是较好的选择。
汇编器将汇编代码转换成二进制目标代码,目标代码是机器代码的一种形式,包含所有指令的二进制表示,但没有填入地址的全局值。
汇编代码有一个主要特点,就是它用可读性更好的文本格式来表示。能够理解汇编代码以及它与原始C代码的联系,是理解计算机如何执行程序的关键一步。
3.2.1 机器级代码
对于机器级编程来说,其中有两种抽象尤为重要:
一种为机器级程序的格式和行为,定义为指令集体系结构,他定义了处理器状态、指令的格式、以及每条指令的对状态的影响。
第二种为机器级程序器级程序使用的存储器地址是虚拟地址。
一条机器指令只执行一个非常基本的操作。
3.2.3 关于格式的注解
所有以'.'开头的行都是知道汇编器和链接器的命令。
需要记住的一点是:再有多个操作数的指令情况下,列出操作数的顺序相反。当在两种格式间进行转换的时候,这一点非常令人困惑。
3.3 数据格式
- 单精度:4字节 双精度:8字节 扩展精度:10字节实际存储成12字节
- moveb、movw、movl:对应字节、字、双字。
3.4 访问信息
图1:
学习过程中解决书上习题
图2:
图3:
学习进度条
代码行数(新增/累积) | 博客量(新增/累积) | 学习时间(新增/累积) | 重要成长 | |
---|---|---|---|---|
目标 | 5000行 | 30篇 | 400小时 | |
第一周 | 0/50 | 1/2 | 20/20 | |
第二周 | 176/600 | 2/4 | 38/38 | |
第三周 | /1100 | /7 | /60 | |
第四周 | /1350 | /9 | /90 |