1.计算机数据表示
送入计算机的数字,字母,符号等信息必须转换成0、1组合的数据形式才能被计算机接收、存储并进行运算。
能够进行算术运算得到明确数值概念的信息成为计算机数值数据,其余的信息成为非数值数据
1.1数值数据的表示
数值数据的计数方式是进位制。凡是按进位的方式计数的数制叫做进位计数制,简称进位制。用有限的数码表示。分别有·二进制、八进制、十进制、十六进制。
基数:是指该进位制中允许选用的基本数码的个数。
1.1 十进制
十进制数,基数为10, 可选用0、1、2……9共10个不同数码中的任何一个。
例如:
1 2 3
= 100+ 20 + 3
= 1*10^2 + 2*10^1 +3*10^0
权:位权就是进制的位数-1次冥。也就是每位数的数值。
第n位数字的表示值等于数字乘以进制的n-1次方
1.2 二进制
基数为2的进位制叫二进制,只有0和1两种数码,逢二进一。英文缩写BIN(前缀:0b/0B)
数据的在内存的基本单位:字节byte
数据的在内存的最小单位:bit位1KB = 1024 byte
1MB = 1024 KB
1GB = 1024 MB
1TB = 1024 GB
(1)如何把二进制转换成十进制原理同十进制,例如:
0b 1010 = 1*2^3 + 0*2^2 + 1*2^1 + 0*2^0 = 8 + 2 =10
0b 1111 = 1*2^3 + 1*2^2 + 1*2^1 + 1*2^0 = 8 + 4 + 2 + 1 =15
(2)如何把十进制转换成二进制:
a. 短除法: 除以2取余,逆序排列,高位补零。一般可以四个一组。
例如:
100 / 2 = 50 ... 0
50 / 2 =25 ... 0
25 / 2 =12 ... 1
12 / 2 = 6 ... 0
6 / 2 = 3 ... 0
3 / 2 = 1 ... 1
1 / 2 = 0 ... 1
==> 0b 0110 0100
b. 拆分法: 例如: 74 = 64 + 8 + 2 => 0b 0100 1010
c. 计算器
1.3 八进制
基数为8的进制数叫八进制,0 1 2 3 4 5 6 7 作为码数, 逢八进一,英文缩写OCT。(前缀:0)
(1)八进制转换成十进制
算法同十进制,例如:
0177= 1*8^2 + 7*8^1 + 7*8^0 = 64 + 56 +7 =127
十进制转换成八进制也可以用短除法,或者先转换成二进制再转换成八进制。
(2)二进制转换成八进制
每三位二进制代表一位八进制,因为8=2^3
比如:
二进制:0b 0111 ==> 八进制: 07
0b 1000 ==> 0 10
(3)八进制转二进制
每一位八进制代表三位二进制,从低位也就是右边开始,如果不满三位则在左边补零。
比如: 026 ==> 0b 010 110
1.4 十六进制
十六进制有0、1、2、3、4、5、6、7、8、9、a、b、c、d、e、f共16种数码,逢十六进一,英文缩写HEX。(前缀:0x)
(1)十六进制转换成十进制
例:0x 4A = 4*16^1 + 10*16^0
= 64 + 10
= 74
与二进制转十进制相似
(2)二进制转换十六进制
每4位二进制代表一个位十六进制,因为16 = 2^4
例如:
二进制:0b 1111
十六进制: 0x F
与八进制转二进制相似
(3)十六进制转换成二进制
每一位十六进制代表四位二进制,从低位到也就是右边,如果不满四位则在高位补零。
例如: 0x A5E1 ==> 0b 1010 0101 1110 0001
2. 非数值数据表示
2.1 概念
计算机中数据的概念是广义的,机内除有前面提到的数值数据之外,还有文字、符号、图像、语言和逻辑信息等等,因为它们也都是以0、1形式存在,所以成为非数值数据。
2.2 字符数据
字符数据主要指数字、字母、通用符号、控制符号等等,在机器内都被变换成计算机能够识别的二进制编码形式。国际上被普遍采用的一种编码是美国国家信息交换标准代码,简称为ASCII。英文全称:American Standard Code for Information Interchange。可以在Linux的终端用man ascii查阅。
(1)"0"、'0'、0和'\0'的区别
“0” | 字符串0 |
‘0’ | 字符0,对应ASCII码为48 |
0 | 数字0 |
'\0' | 空字符 |
常用字符
'\0' 0 字符串结束的标志
'\n' 10 换行
' ' 32 空格
'0' 48 字符0
'9' 57 字符9
'A' 65 大写字母A
'Z' 90 大写字母Z
'a' 97 小写字母a
'z' 122 小写字母z
‘0’(48) - 48 ==> 0
'1' (49) - 48 ==> 1
'9' (57) -48 ==>9
转换
‘0’(48) - 48 = 0
'1' (49) - 48 = 1
'9' (57) - 48 = 9
==> 字符 - 48 =数字
大写字符 + 32 = 小写字母
小写字符 - 32 = 大写字符
标签:10,进制,48,数据表示,0b,二进制,八进制,十进制,计算机 From: https://blog.csdn.net/thh135/article/details/140475172