2014025676《嵌入式程序设计》第一次实验报告

本周正式开始学习《嵌入式系统程序设计》,在课上老师指导我们复习了Linux操作系统的Shell命令、vim编辑器以及gcc编译相关方面的知识;在课下,通过查找资料和“实验楼”的练习。在这个过程中,我收获了很多,同时也遇到了一些挫折,在安装Linux系统时就遇到了问题。

一、Linux系统的安装
1、64位的CPU
2、安装的系统必须为64位
3、CPU允许硬件虚拟化
经过排查,我是第三项没有满足,CPU虚拟化没开。

开启需要进入BIOS模式(开机logo画面按F2【电脑型号不同,按键不同】)。进入后依次选择Configuration-->Intel Virtualization-->Enabled(电脑型号不同,名字大同小异),重启电脑后,就会发现创建虚拟机时有Linux-64选项了,现在可以成功安装系统,问题解决。

二、Linux基本Shell命令
Linux相比于Windows最大的不同是Linux可以实现全键盘操作,显著的提高了工作效率,而这一功能便是通过输入各种命令实现的,以下便是最常用的命令:

pwd 查看当前的目录地址
mkdir abc 创建一个名字为 abc 的文件目录
cd abc 进入 abc 目录中
ls 查看当前目录下的文件
ls -l 长格式查看文件,可查看文件权限等信息
ls -a 查看包括隐藏的全部文件。可以与 -l 混用实现更强大的功能
cp /etc/abc ./ 将/etc/abc文件复制到当前目录
rm abc 删除 abc 文件
注意&技巧:
  1、TAB键补全:可以补全命令、命令参数、文件名等,可以提高效率和减少错误。
  2、当要复制文件到当前目录时,一定要记得在命令后加上"."或"./",我曾因这个问题坤肉很久。

三、VIM操作
VIM是全键盘操作的编辑器,对于能熟练掌握VIM命令的人来说,这简直就是编程神器。VIM有三个最常用的模式:普通模式、插入模式、底层命令模式。三种模式相互切换:

普通模式 i(在当前坐标处进行编辑)-> 插入模式
a(在光标后插入编辑) -> 插入模式
:(shift+;) -> 底层命令模式
插入模式 ESC键 -> 普通模式
注意&技巧:
  1、普通模式下,想要在光标后输入字符,要按 a 而不是 i ,我就因输入字符后总留一个字符而痛苦过。
  2、要清醒的知道当前处于什么模式,且灵活切换,不要试图在插入模式用上下左右箭头移动光标,否则会发生好糟糕的事情(本周第一次课差点因这个疯掉),时刻记得左上角的 ESC键。

普通模式

o/O(shift+o) 在当前行后/前插入一个新行
h/j/k/l 左/下/上/右
x 删除光标所在的字符
dd 删除光标所在的一整行
yy 复制光标所在的一行
p/P(Shift+p) 粘贴至光标后(下)/前(上)
~(shift+`) 切换当前字母大小写(很有意思的小功能)
gg 光标移动到第一行
G(shift+g) 光标移动到最后一行
nG(shift+g) 光标移动到指定的一行
cw 替换一个单词,即删除一个单词,并进入插入模式(很实用)
u 撤销上一次操作
/+.../?+... 向下/向上查找
注意&技巧:
  1、通过“实验楼“的实验,我认为掌握主键盘的h/j/k/l操作光标上下左右的移动以及x键删除比用小键盘操作速度快的多。
  2、dd 未删除当前一行(其实它是剪切),p 复制到下一行,所以 ddp 这个组合键就很轻易地实现上下文互换。
  3、很多命令可以和数字连用,提高效率。例如 3dd、u3、3G 等。

底层命令模式

:w 保存文件
:q 退出文件
:x/:wq 保存并退出文件
:!q 强制退出
注意&技巧:
  1、好奇查了下资料,x与wq同为保存并退出。但文件未修改的情况下,wq会强制更新修改日期,对深层次编程会有一定的影响,所以最好用x键。

四、GCC
gcc编译过程:

gcc -E text.c -o text.i 预处理,得到 text.i
gcc -S text.i -o text.s 编译,得到 text.s
gcc -c text.s -o text.o 汇编,得到 text.o
gcc text.o -o text 链接,得到 text 可执行文件
gcc text.c -o text 一个命令经过以上步骤得到可执行文件 text

注意&技巧:
  1、有时编译的可执行文件不能运行,是因为没有运行权限,需要用chmod命令加上x(运行)权限。
  2、先预处理,再打开.i文件查看内容;可将.c源文件的预处理代买注释掉,然后预处理并打开.i文件,再次查看内容,便可验证预处理功能。

五、本周总结
本周通过课上学习、“实验楼“练习(“实验楼”文案很有意思)以及因兴趣而查的资料,对Linux的Shell命令、VIM、GCC编译都有了更系统的认识,但仍欠熟练,只有熟练后才能将单个命令组合成套路,才能掌握类似 ddp 这样快速互换vim上下行的组合命令,谢谢老师!

posted @ 2017-04-22 19:46  lixiangwei  阅读(382)  评论(1编辑  收藏  举报