20145306 信息安全系统设计基础 第五周博客总结
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了20145306 信息安全系统设计基础 第五周博客总结相关的知识,希望对你有一定的参考价值。
20145306《信息安全系统设计基础》第5周学习总结
教材学习中的问题和解决过程
栈和栈帧
栈: 栈底指针和栈顶指针,栈底指针位于高地址端,栈顶指针位于低地址端。 栈是一种特殊的数据结构,是一种只能在一端进行插入和删除操作的特殊线性表。 存储原则是先进后出。 对栈的插入与删除操作中,不需要改变栈底指针。 栈是由高地址向低地址延伸的。 栈帧——则是相对某个函数而言,调用栈就是正在使用的栈空间,由多个嵌套调用函数所使用的栈帧组成。 栈帧表示程序的函数调用记录,而栈帧又是记录在栈上面。(为单个过程分配的那部分栈称为栈帧) 每个函数的每次调用,都有它自己独立的一个栈帧,这个栈帧中维持着所需要的各种信息。因此栈作用就是用来保持栈帧的活动记录(即函数调用)。
关于过程
调用者caller,被调用者callee。 当caller调用callee时,caller的返回地址被压入栈中,形成caller栈帧的末尾。 返回地址:就是当程序从callee返回时应该继续执行的地方(指令的地址),当被调用过程返回时,程序会从此处继续执行。 callee的栈帧从保存的帧指针的值(%ebp)开始,其后即为其保存的寄存器的值,和callee调用其他过程的参数。
将.c文件编译为汇编语言:
本周代码托管链接
其他(感悟、思考等,可选):
第三章的内容比较多,看得内容比较少。
本周主要是对于汇编的学习,栈针还是没有看懂,有点不太好理解,还需要接下来的不断思索理解。
以上是关于20145306 信息安全系统设计基础 第五周博客总结的主要内容,如果未能解决你的问题,请参考以下文章
2018-2019 20165203 《信息安全系统设计基础》第五周学习总结
2018-2019-1 20165301 《信息安全系统设计基础》第五周学习总结
2017-2018-1 20155208 《信息安全系统设计基础》第五周学习总结