嵌入式学习 三天预课总结

一、VMware虚拟机

虚拟机:是一个虚拟的环境,运行在宿主机的一个隔离区

二、Ubuntu

操作系统:是计算机的操作系统,管理硬件和软件的系统
他是任何人机器交流的必将之路

2.1 操作系统的分类

操作系统内核
windowswindowsNT
UbuntuLinux
MacosUnix

2.2 Ubuntu的系统分区

三、认识终端命令

ubuntu@ubuntu:~$
第一个ubuntu 用户名
第二个ubuntu 用户所属组
@ : 分割符
~ 家目录 【当前目录的路径】
$ 普通用户权限

管理员权限

命令解释
sudo su root切换管理员权限
su ubuntu回到普通用户权限

四、终端命令

格式1: 指令 【选项】 【参数】
格式2: 指令 【参数】 【选项】
注意:选项和参数可以省略不写,指令、选项、参数之间必须使用空格隔开

4.1ls指令

作用:查看当前目录的所有文件或文件夹

命令解释
ls查看当前目录下的所有文件或文件夹
ls -a查看当前目录下的所有文件或文件夹,包括隐藏文件
ls 目录名查看该目录下的所有文件
ls 文件名把文件名这个字符串,进行打印
ls dir1/dir2查看当前目录下的dir1下的dir2的所有文件及目录
ls dir1 -a查看当前目录下的dir1的所有文件及目录,包括隐藏文件
ls -l查看当前目录下的所有详细信息
ls -la查看当前目录下的所有详细信息包括隐藏文件
ls -lh查看当前目录下的所有详细信息,并以K M G 等为单位进行显示
ls -lha查看当前目录下的所有详细信息,并以K M G 等为单位进行显示,包括隐藏文件
ls dir3/dir1 -lha查看dir3下面的dir1目录的所有详细信息,以KMG等为单位,包括隐藏文件

4.2cd指令

作用:进入到文件夹【等价于windows下的双击打开】

命令解释
cd dir3进入到当前目录下的dir3目录
cd直接回到家目录下
cd ~直接回到家目录下
cd dir3/dir1进入到当前目录下的dir3下的dir1目录
cd .进入到当前目录【没有反应】
cd -回到上一次操作的目录下,并打印绝对路径
cd …(此处为两个. )进入到当前目录下的上一级目录

4.3touch指令

作用:创建文件
注意:在创建文件时,不识别后缀名,但是在后期编译时识别后缀名

命令解释
touch file1在当前目录下创建文件file1
touch file1 file2在当前目录下创建多个文件
touch dir1/file1在当前目录下dir1目录下创建file1文件

4.4mkdir指令

作用:创建文件夹

命令解释
mkdir dir在当前目录下创建dir目录
mkdir dir1 dir2在当前目录下创建多个目录
mkdir dir1/dir2 -p在当前目录下嵌套创建目录
mkdir d1/d2 d3/d4 -p在当前目录下创建多个嵌套目录

4.5rmdir指令

作用:删除空目录的
注意:不能删除文件,不能删除非空目录

命令解释
rmdir d1删除当前目录下的d1空目录
rmdir d1 d2/d3 d4/d5/d6删除当前目录下的多个嵌套空目录

4.6rm指令

作用:删除文件或者文件夹【可空可非空】

命令解释
rm file1 file2删除当前目录下的多个文件
rm d1 d2 d3 -r删除当前目录下的多个目录

4.7cp指令

作用:赋值和粘贴

  • cp file1 file2 文件拷贝文件
    当file2不存在,把file1复制一份,重命名为file2
    当file2存在,把file1的内容复制一份覆盖file2

  • cp file1 dir1 | 文件拷贝目录
    dir1目录必须提前存在,把file1复制一份存储到dir1

  • cp dir1 dir2 -r 目录拷贝目录
    当dir2不存在时,把dir1复制一份,取名为dir2
    当dir2存在时,把dir1复制一份,存到dir2里面,dir2原来的内容不变

4.8 mv指令

作用:剪切【复制、粘贴、删除】

  • mv file1 file2 对文件剪切
    当file2不存在时,把file1复制一份,取名为file2,删除file1
    当file2存在,把file1复制一份替换file2的内容,删除file1

  • mv file1 dir1 文件剪切到目录
    注意:
    dir1必须存在,如果dir1中没有同名文件,把file1剪切到dir1里面
    如果dir1存在同名文件,时file1覆盖dir1中同名文件

  • mv dir1 dir2 对目录进行剪切
    当dir2不存在时,把dir1目录重名为dir2
    当dir2存在时,把dir1剪切到dir2中,删除dir1

4.9clear指令

作用:清屏【ctrl l】

4.9 tab健

作用:自动补全

4.10cat指令

作用:查看文件的内容,一般用来赋值

命令解释
cat file1查看文件中的内容
cat file1 -n在查看文件中内容时,显示行号

4.11echo指令

作用:直接打印字符串,类似printf

4.12man指令

作用:查看手册

4.13重定向

>    删除,并复制 注意:只能定向给一个文件
    - cat file1 > file2
        当file2不存在时,创建file2,把file1的内容赋值给file2
        当file2存在时,file1的内容覆盖file2的内容,file2原来不存在
    - cat file1 file2 > file3  把file1和file2里面的内容存到file3中
    - cat file1 file2 > file3 file4
    - echo file1 > file2
        当file2不存在时,创建file2,把file1字符串覆盖file2
        当file2存在时,把file1字符串覆盖file2
>>   追加
    - cat file1 >> file2
        当file2不存在时,创建file2,把file1的内容赋值给file2
        当file2存在时,file1的内容追加file2的内容后面
    - echo file1 >> file2
        当file2不存在时,创建file2,把file1字符串追加file2
        当file2存在时,把file1字符串追加到file2的后面

4.14 pwd指令

作用:查看当前目录的绝对路径

五、Vi/Vim编译器

作用:编写代码

5.1 Vi的使用格式

格式 vi  文件名  或者  vim  文件名
vi和touch的区别:
1> vi需要手动保存,如果不保存,文件创建失败
2>touch自动保存文件,直接创建成功

5.2 命令行模式

作用:赋值、粘贴、删除等

命令解释
yy赋值光标所在行
nyy赋值从光标开始的n行
选中y可以随意复制
进入底行模式 m,ny赋值m-n行
p粘贴(当选中赋值时,粘贴在光标后)
dd剪切光标所在行【删除】
ndd剪切从光标开始的n行
选中d可以随意剪切
进入底行模式 m,nd剪切m-n行
gg光标移动到首行的第一个字符
G光标移动到尾行的第一个字符
ngg nG光标移动到指定的n行的第一个字符
ggyG复制全文
ggdG剪切全文
gg=G自动调整全文格式
=选中,自动调整格式
u撤回上一次操作
ctrl r反撤回
x剪切光标所在的一个字符
X剪切光标前一个字符

5.3 插入模式

作用:编写代码

命令解释
A在光标所在行的行尾插入
a在光标所在位置的后面插入
o在光标所在行的下一行插入
O在光标所在行的上一行插入
I在光标所在行的行首插入
i在光标虽在位置的前面插入
S删除光标所在行的整行,并插入
s删除光标所在位置,并在光标位置插入
insert在光标虽在位置的前面插入

5.4 底行模式

作用:保存,退出,查找,替换

命令解释
w保存
q退出
wq保存并退出
q!不保存,并强制退出
wqa保存全文
x保存并退出
/字符串查找,并高亮显示
noh取消高亮
%s/字符串1/字符串2把每一个的第一个字符串1替换为字符串2
%s/字符串1/字符串2/g把全文字符串1替换为字符串2
m,ns/字符串1/字符串2/g把m-n之间的字符串1替换为字符串2
set number/nu显示行号
set nonumber/nonu取消行号

5.5 三种模式之间的切换

插入模式-----> 底行模式
插入--esc->命令行--冒号-> 底行模式
底行模式    ----->插入模式
底行模式--回车结束底行模式输入,直接跳转到-->命令行模式---Aios-->插入模式

六、gcc编译器

1,直接编译,默认可执行文件a.out

gcc 文件名
./a.out

2, 自动可执行文件名

gcc 文件名 -o 自定义可执行文件名
./自动可执行文件名

3,重点: 分步编译ESc iso

 预处理.i    ----> 编译.s    ---->汇编.o    --->链接.out
1>预处理:展开头文件、删除注释、替换宏定义
     gcc -E 1.c -o 1.i
2>编译:检查语法的正确性
gcc -S 1.i -o 1.s
3>汇编:把汇编文件转换为二进制文件
 gcc -c 1.s -o 1.o
4>链接:把二进制文件转换为链接文件
gcc 1.o -o bbb

七、第一个程序

注释方法

注释解释
//单行注释
/* */多行注释
#if 0 #endif宏定义注释

#头文件,或者宏定义的标志

//<>:在系统库直接查找
//“”:先在当前目录下查找,不存在,再系统库中查找

//stdio.h: printf scanf
//stdlib.h:malloc free
//string.h:strlen strcmp …

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
int main(int argc, const char *argv[])
{
    printf("fgshdsj%d",12);
    return 0;
}

八、计算机的进制

1> 计算机中的进制:二进制、八进制、十六进制
2> 生活中的进制:十进制、七进制、365进制、60进制
3>计算机主要进制:二进制【电路只有闭合和打开的状态】
进制三要素:基数、数码、位权

学习十进制二进制八进制十六进制
基数102816
数码0-90-10-70-9 a-f/A-F
位权…10^2 10^1 10^0…2^2 2^1 2^0…8^2 8^1 8^0…16^1 16^0

8.1 计算机的二进制

1字节=8byt 1byt=两位(如01)

1> 加、减:逢二进一、借一当二
2>有符号数、无符号数
无符号数:没有正负之分
0000 0000 ---->0
1111 1111
有符号数:由正负之分

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值