计算机基础和Linux安装
1.计算机系统
一个完整的计算机系统由硬件系统和软件系统两大部分组成。
1.1 冯·诺伊曼体系结构
8 个二进制位(bit,b)为 1 个字节(byte,B)。
00000000 ~ 11111111 (共有 28 种可能)
1.1.1 二进制
二进制,即逢 2 升位。
通过声卡、显卡等设备,将二进制数据转换成文字、图像、音视频等。
二进制 | 十进制 | |
---|---|---|
0 | 0 | |
20 | 1 | 1 |
21 | 10 | 2 |
11 | 3 | |
22 | 100 | 4 |
101 | 5 | |
110 | 6 | |
111 | 7 | |
23 | 1000 | 8 |
… | … | |
24 | 10000 | 16 |
… | … | |
25 | 100000 | 32 |
… | … | |
26 | 1000000 | 64 |
… | … | |
27 | 10000000 | 128 |
... | ... | |
28 | 100000000 | 256 |
.. | ... | |
29 | 1000000000 | 512 |
... | ... | |
210 | 10000000000 | 1024 |
... | ... | |
211 | 100000000000 | 2048 |
... | ... |
1.1.1.1 十进制转二进制
找最近的 2n 的数字进行依次相减余数为 2n 的时候,用二进制对位相加得出目标数字二进制数值。
例1: 26
∵ 26-16=10-8=2
∴ 26=16+8+2
∴ 26 的二进制表达为:
例2: 57
∵ 57-32=25-16=9-8=1
∴ 57=32+16+8+1
∴ 57 的二进制表达为:
1.1.1.2 二进制转十进制
将二进制的值拆分成 2n 的值,将其数值相加即可。
例1: 10101101
∵
∴ 10101101= 128+32+8+4+1=173
1.1.2 Linux 计算器—— bc
指令:bc
- bc 计算器默认输入、输出都为 10 进制。
[root@centos6 ~]# bc #打开bc计算器
bc 1.06.95
Copyright 2006 Free Software Foundation, Inc.
This is free software with ABSOLUTELY NO WARRANTY.
For details type `warranty'.
88*123 #计算 88*123
10824 #计算器输出结果
#
#
123+65*2-100 #计算123+65*2-100
153 #计算器输出结果
- bc 计算器进制转换
先设置
obase
之后再设置ibase
,否则会输出异常。且在计算过程中 ibase 与 obase 只能赋值一次。
[root@centos6 ~]# bc
obase=16 #设置输出为16进制
ibase=2 #设置输入为2进制
1111111111111100011010 #输入2进制数
3FFF1A #转换为16进制
- 通过管道运算与进制转换
这里使用的管道可以简单的理解为将 echo"< content >"
发送给 bc 计算器
[root@centos6 ~]# echo "1+1" | bc #将1+1发送给bc计算器
2
[root@centos6 ~]#
[root@centos6 ~]# echo "5*10-1" | bc #将5*10-1发送给bc计算器
49
#十进制转二进制:echo "obase=2;255" | bc
#八进制转十进制:echo "obase=10;ibase=8;377" | bc
#二进制转十进制:echo "obase=10;ibase=2;11111111" | bc
#二进制转16进制:echo "obase=16;ibase=2;11111111" | bc
[root@centos8 ~]#echo "obase=2;255" | bc
11111111
[root@centos8 ~]#echo "obase=10;ibase=8;377" | bc
255
[root@centos8 ~]#echo "obase=10;ibase=2;11111111" | bc
255
[root@centos8 ~]#echo "obase=16;ibase=2;11111111" | bc
FF
#注意前后顺序, ibase在前计算结果会有误。 如下:
[root@centos8 ~]#echo "ibase=2;obase=16;11111111" | bc
100110
- 确定当前操作系统的位数
[root@centos8 ~]#getconf LONG_BIT
64
[root@rhel5 ~]# getconf LONG_BIT
32
root@ubuntu2004:~# arch
x86_64
[root@rhel5 ~]# arch
i686
32 位与 64 位操作系统的区别:CPU 一次能处理的最大位数。
- 32 位系统最多支持 232=4GB 内存
- 64 位系统最多支持 264B 内存
i386 是 32 位系统镜像的常见标志。
标签:obase,bc,二进制,安装,16,echo,Linux,root,计算机 From: https://www.cnblogs.com/Swollen/p/16885216.html