20145209 《信息安全系统设计基础》第6周学习总结

20145209 《信息安全系统设计基础》第6周学习总结

教材学习内容总结

vi的基本操作

vim 文件名:打开当前目录下相应的文件(如果不存在会自动新建)

光标移动:
h-←,j-↓,k-↑,l-→,方向键也可以控制相应的光标移动方向;w-移动到下一个单词,b-移动到上一个单词。

[[ 转到上一个位于第一列的"{";]] 转到下一个位于第一列的"{";{ 转到上一个空行;} 转到下一个空行

插入模式:(不同模式之间需要先esc退出后才能切换)

i 在当前光标处进行编辑

I 在行首插入

A 在行末插入

a 在光标后插入编辑

o 在当前行后插入一个新行

O 在当前行前插入一个新行

cw 替换从光标所在位置后到一个单词结尾的字符

保存和退出vim:

w 保存文档

:q! 强制退出,不保存

:q 退出

:wq! 强制保存并退出

:w <文件路径> 另存为

:saveas 文件路径 另存为

:x 保存并退出

:wq 保存并退出

删除文本

x 删除游标所在的字符

X 删除游标所在前一个字符

Delete 同x

dd 删除整行

dw 删除一个单词(不适用中文)

d$或D 删除至行尾

d^ 删除至行首

dG 删除到文档结尾处

d1G删至文档首部

gcc

预处理:gcc –E hello.c –o hello.i;gcc –E调用cpp

编 译:gcc –S hello.i –o hello.s;gcc –S调用ccl

汇 编:gcc –c hello.s –o hello.o;gcc -c 调用as

链 接:gcc hello.o –o hello ;gcc -o 调用ld

gdb

gdb programm(启动GDB)

b 设断点(要会设4种断点:行断点、函数断点、条件断点、临时断点)

run 开始运行程序

bt 打印函数调用堆栈

p 查看变量值

c 从当前断点继续运行到下一个断点

n 单步运行

s 单步运行

quit 退出GDB

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

在编译实验楼代码时,编译不成功,经检查发现原因是将代码分开编译,后改为全部编译进main.c中时,编译成功。

本周代码托管截图










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

这是第二周的学习内容,我独立完成安装了VIM,并根据实验楼内容编译代码和用GDB调试代码。但还是很不熟练,会勤加练习。另外,我还没有学会如何使用Git,将在短时间内通过向同学求教的方式学会并体现在下一篇博客中。

学习进度条

代码行数(新增/累积) 博客量(新增/累积) 学习时间(新增/累积) 重要成长
目标 5000行 30篇 400小时
第一周 200/200 2/2 20/20
第二周 300/500 2/4 18/38
第三周 500/1000 3/7 22/60
第四周 300/1300 2/9 30/90

参考资料

原文地址:https://www.cnblogs.com/liuyiyang/p/5981893.html