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

本文总结了《信息安全系统设计基础》课程第五周的学习内容,包括ISA定义、函数调用栈帧概念及其GDB调试方法、gcc编译过程及汇编代码分析等内容,并分享了学习过程中的问题解决经验。

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

教材学习内容总结

  1. ISA就是一个处理器支持的指令和指令的字节级编码。
  2. 理解函数调用栈帧的概念,并能用GDB进行调试: GDB对于栈帧的调试可以分为以下几方面的内容  up n 向上回退n个栈帧(更外层),n默认为1; down n 向下前进n个栈帧(更内层),n默认为1.;up-silently n up n相同,但是不打印信息。; down-silently n down n相同,但是不打印信息。
  3. 使用gcc编译代码:b- 字节 1  ;short w- 字 2; int l- 双字 4; long l- 双字 4; long long int - 8 ;char * l- 双字 4; float s- 单精度 4; double l- 双精度 8 ;long double t- 扩展精度 10/1
int exchange(int *xp, int y){                                 
    int x =  *xp;  
    *xp = y;  
    return x;  
}  
  
//*********汇编代码******/  
//1 movl 8(%ebp),%eax   Get xp  
//2 movl 12(%ebp),%edx  Get y  
//3 movl (%eax),%ecx    Get x at *xp  
//4 movl %edx,(%eax)    Store y at *xp  
//5 movl %ecx,%eax      Set x as return value   

        4. 编译过程

     

  gcc -Og -S xx.c可以产生汇编文件

 

 

 

教材学习中的问题和解决过程

 

  • 问题1:idivl 与 divl区别
  • 问题1解决方案:在idivl这个指令执行的过程中,其实对被除数进行了符号扩展,类似于cltd指令,或者有时也会将%eax移动到%edx,然后对%edx进行算术右移31位的运算。这两种方式的结果是一样的,都是将%eax符号扩展32位并存储在%edx当中

代码调试中的问题和解决过程

  • 问题1:XXXXXX
  • 问题1解决方案:XXXXXX
  • 问题2:XXXXXX
  • 问题2解决方案:XXXXXX
  • ...

代码托管

 

 

(statistics.sh脚本的运行结果截图)

上周考试错题总结

    • 11.gcc hello.c产生的a.out属于()
      • A .可重定位目标文件
      • B .可执行目标文件
      • C .共享目标文件
      • D .目标模块或目标文件
    • 17.链接器的重要性在于可以支持()
      • A .静态库
      • B .动态库
      • C .分离编译
      • D .调试
  • ...

结对及互评

点评模板:

  • 博客中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 代码中值得学习的或问题:
    • xxx
    • xxx
    • ...
  • 其他

本周结对学习情况

- 20155301
- 结对照片
- 结对学习内容  - 第三章  - ...

其他(感悟、思考等,可选)

通过这一章的学习,我不仅复习了上学期所学的汇编知识,也对汇编知识有了一个更新的了解。

学习进度条

 代码行数(新增/累积)博客量(新增/累积)学习时间(新增/累积)重要成长
目标5000行30篇400小时 
第一周200/2002/220/20 
第二周300/5002/418/38 
第三周500/10003/722/60 
第四周300/13002/930/90 

尝试一下记录「计划学习时间」和「实际学习时间」,到期末看看能不能改进自己的计划能力。这个工作学习中很重要,也很有用。 耗时估计的公式 :Y=X+X/N ,Y=X-X/N,训练次数多了,X、Y就接近了。

参考:软件工程软件的估计为什么这么难软件工程 估计方法

  • 计划学习时间:XX小时

  • 实际学习时间:XX小时

  • 改进情况:

(有空多看看现代软件工程 课件 软件工程师能力自我评价表)

参考资料

  • 《深入理解计算机系统V3》学习指导
  • ...

  

转载于:https://www.cnblogs.com/wxwddp/p/7711295.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值