HQS.Part1-Linux基础命令、gcc编译、2进制、8进制、16进制转换

HQS.Part1-Linux基础命令、gcc编译、2进制、8进制、16进制转换

一、Linux基础命令

命令含义
1.pwd显示用户主目录
2.cd 地址进入地址
3.shutdown关机(sudo shutdown -Ph now 立刻关机)
4.man 命令查询命令用法及参数
5.ls打印文件夹目录
6.touch hello.c创建文件“hello.c”
7.cp 源文件路径 目标文件路径把源文件复制到目标文件路径下
8.mv 源文件路径 目标文件路径把文件从源路径移动到目标路径
9.rm 文件路径删除路径下文件
10.cat hello.txt打印hello.txt 中的内容

常用命令及相关参数

1. ls
ls查看当前目录下的文件夹及文件
ls .当前目录
ls . .上一级目录
ls -l查看文件详细信息
ls -a查看所有文件的名字 ,包含 .打头的文件
ls -la查看所有文件的详细信息
2.cd
cd进入文件夹
cd.进入当前目录
cd . .进入上一级目录
cd -返回上一次目录
cd进入用户主目录
3. cp
cp复制
cp -f强制复制,有同名的直接覆盖
cp -i若有重复文件,询问师傅覆盖
cp -r递归复制,用于目录复制
4.rm
rm删除文件或文件夹
rm -r删除文件夹
rm -rf删除文件夹
rm name.txt删除文件name.txt
rm -f强制删除

二、gcc编译器使用

1.流程

预编译
编译
汇编
链接

2.以代码 hello.c 为例编译过程

①预处理阶段

预处理器(cpp)根据以字符#开头的命令,修改原始的C程序,通常以 hello.i 作为扩展名。

gcc -E hello.c -o hello.i

或者这样写

gcc -E -o hello.i hello.c
②编译阶段

编译器(ccl)将 hello.i 翻译成文本文件 hello.s,包含一个汇编语言程序。

gcc -S hello.i -o hello.s
③汇编阶段

汇编器(as)将 hello.s翻译成机器语言指令保存到hello.o中,hello.o是一个普通二进制文件,缺少程序运行的某些库。

gcc -c hello.s -o hello.o
④链接阶段

链接器(ld)链接底层库文件,生成可执行文件

gcc hello.o -o hello

三、vim 文本编辑器的使用

1. 三种模式:命令模式、插入模式、底层模式

Esc
:
i
插入模式
命令模式
底行模式

2.命令模式基本命令

命令模式功能
i进入插入模式,在光标处开始编辑
I(i大写)进入插入模式,在光标移动到第一个非空格或tab字符处编辑
a进入插入模式,在光标之后开始编辑
A进入插入模式,在光标之后开始编辑
o进入插入模式,在当前光标下面添空行,并在空行行首编辑
O进入插入模式,在当前光标所在的上面添空行,并在所添空行行首编辑
yy拷贝光标所在行
nyy从当前光标所在行起连续n行复制
dd剪切光标所在行
ndd从当前光标所在行起连续n行剪切
p将复制或粘贴的内容复制或粘贴到光标所在下一行
u撤销上一步命令
nx删除从光标位置起向后连续n个字符
1G移动光标到文件第一行
G移动光标到文件的最后一行

3.底行模式

命令模式输入 ":"输入命令

底行模式功能
w保存
q推出
w 文件名另存为
q!强制退出
r 文件名导入文件内容到光标位置
n移动光标到指定行
set nu显示行号
set nonu不显示行号
m,ny复制m-n行
m,nd剪切m-n行
/字符串查找/后面的字符串
%s/字符串1/字符串2/gc全文字符串1替换成字符串2
m,ns/字符串1/字符串2/gcm-n行中将字符串1替换成字符串2
nohl取消高光

四、进制转换

1、 2进制转10进制

二进制:(1010)2
十进制:1x23+0x22+1x21+0x20=10
方法:累加法
在这里插入图片描述
把二进制数填入B栏,B栏各项与A栏对应栏相乘相加,和即为十进制数。

2、 十进制数转2进制数

十进制:125
二进制:1111101
在这里插入图片描述

3、2进制转8进制

二进制:1101 0001
八进制:0xd1
方法:从右往左一次取四位,化为 16进制数,直到取完,不够补0。

4、小数十进制转2进制

例1:

十进制:0.125
二进制:0.001(顺序排)
0.125 x2=0.25 --------0
0.25 x 2 = 0. 5 --------0
0.5 x2=1.0 -------------1

例2:
(0.625)10=(?)2
保留5位则取 0.10100
0.625x2 =1.3 ------1
0.3 x2 =0.6 --------0
0.6x2=1.2 ----------1
0.2x2=0.4 ----------0
0.4x2=0.8 ----------0
0.8x2=1.6 ----------1
0.6x2=1.2 ----------1

5、带小数十六进制转十进制

十六进制:(F8C.B)16
十进制:Fx162+8x161+Cx160+Bx16-1=3980.6875

五、计算机编码

1、计算机内数据存储使用补码的形式最高位为符号位,负数 为1, 非负数为0。

2、原码

①非负数原码为其本身;
②负数原码为符号为1,其他和正数相同;

3、反码 :除符号位不变,其它位取反;

4、补码:

①非负数和原码相同;
②负数的补码为反码+1(从右往左找到第一个 1,保持不变,符号位不变,之间的其他各位取反);
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

jun8086

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值