2018-2019-1 20165206 《信息安全系统设计基础》第3周学习总结

Posted brs666

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了2018-2019-1 20165206 《信息安全系统设计基础》第3周学习总结相关的知识,希望对你有一定的参考价值。

- 2018-2019-1 20165206 《信息安全系统设计基础》第3周学习总结

- 教材学习内容总结

  • 程序编码:gcc命令调用一整套的程序将源代码转化为可执行文件。
    首先,C预处理器扩展源代码;
    其次,编译器产生源文件的汇编代码;
    然后,汇编器将汇编代码转为二进制目标代码文件;
    最后,链接器将目标代码文件与实现库函数的代码合并,产生可执行代码文件。

  • 机器级编码的两个抽象:
    第一种是ISA,即指令集体系结构或指令集架构,定义了处理器状态、指令的格式,以及每条指令对状态的影响。
    第二种是机器级程序使用的内存地址是虚拟地址。

  • 汇编与反汇编:
    查看C语言编译器产生汇编代码的指令:

gcc -Og -S main.c

gcc编译并汇编的指令:

gcc -Og -c main.c

反汇编的指令:

objdup -d main.o

示例:

源代码:
技术分享图片

汇编:
技术分享图片

反汇编:
技术分享图片

  • 操作数的三种类型:
    第一种是立即数,用来表示常数值。
    第二种是寄存器,表示某个寄存器的内容。
    第三种是内存引用,根据有效地址访问某个内存位置。

  • 有效地址计算公式:
    一个立即数偏移Imm,一个基址寄存器rb,一个变址寄存器ri,一个比例因子s,有效地址被计算为:Imm + R[rb] + R[ri]*s

  • 数据传送指令

- 上周考试错题总结

  • 错题一:字长32位的机器,虚拟地址空间范围是(0-2^32-1)。

  • 错题二:a=[0010], b=[1100], a||b的值是(非零(TRUE))。















以上是关于2018-2019-1 20165206 《信息安全系统设计基础》第3周学习总结的主要内容,如果未能解决你的问题,请参考以下文章

2018-2019-1 20165206 《信息安全系统设计基础》第4周学习总结

2018-2019-1 20165206 《信息安全系统设计基础》第3周学习总结

2018-2019-1 20165206 《信息安全系统设计基础》第七周学习总结

20165206 2018-2019-1 《信息安全系统设计基础》第五周学习总结

2018-2019-1 20165201 20165203 20165206 实验二 固件程序设计

2018-2019-1 20165201 20165203 20165206 实验二 固件程序设计