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

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

教材学习内容总结

  1. 编译C语言:gcc hello.c

  2. 运行C语言:./a.out(名字可以定义:gcc hello.c -o hello)

  3. 信息=二进制+上下文

  4. (1)预处理:gcc -E hello.c -o hello.i (2)产生汇编代码:gcc -S hello.c -o hello.s
    (3)汇编转机器代码:gcc -c hello.s -o hello.o
    (4)机器代码转汇编:objdump -d hello.o

  5. cgdb(1)b 函数名 设置函数断点
    (2)b 行号 设置行断点
    (3)b if
    (4)tb
    (5)run开始
    (6)inf o查看断点
    (7)step(s)
    (8)next(n)
    (9)continue(c) 下一断点
    (10)quit
    (11)print(p) 显示某一变量值
    (12)finish 运行完函数
    (13)until 运行完循环
    (14)p 变量=某个值 给变量赋值继续运行
    (15)断点分为:行断点、临时断点、函数断点、条件断点
    (16)gcc main.c -L . -lhello(L显示静态库l连接)

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

  • 问题1:p477有一行命令为 gcc -c main2.c,之后直接就用了main.o,不需要通过esc三步吗?
  • 问题1解决方案:询问结对伙伴,是相同的。
  • 问题2:动态链接共享库具体使用上跟静态库的区别在哪里?
  • 问题2解决方案:直观的从书上看到静态库需要 .o文件,而动态只需要.c即可。准备问一下老师。

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

  • 问题1:

  • 问题1解决方案:使用命令 gcc -Og -o prog xxx.c xxxx.c连接这些文件成功

代码托管

本周结对学习情况

20155203

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 32/32 1/1 10/10
原文地址:https://www.cnblogs.com/20155204wh/p/7589164.html