python笔记2:二进制和编码
本文摘要: 二进制1位二进制可以表示21=2种状态: 0,12位二进制可以表示22=4种状态: 00,01 10,113位二进制可以表示23=8种状态: 000,001 010,011 100,101 110,111如此类推,越多的二进制位数可以表示越多状态或者数据。ASCII编码ASCII编码用8位二进制来表示不同
二进制

1位二进制可以表示21=2种状态:

 0,1

2位二进制可以表示22=4种状态:

 00,01 10,11

3位二进制可以表示23=8种状态:

 000,001 010,011 100,101 110,111

如此类推,越多的二进制位数可以表示越多状态或者数据。

ASCII编码

ASCII编码用8位二进制来表示不同的字符,那么总共可以表示28=256字符。这是美国最早定制的字符表,没有中文字符。

ASCII表

常用就是数字和大小字母,帮助记忆:

48 》0 以此类推:49 》1,50 》2,51 》3,......65 》A 以此类推:66 》B,67 》C,68 》D,......97 》a 以此类推:98 》b,99 》c,100 》d,......

我们把8位的二进制称为一个字节。可以想象只有256字符一个字节的ASCII编码完全不能满足全球那么多文字字符,光光中国的汉字就有2万多个了(常用中文字符约6000个,全部中文字符约20000多个)。一种新的2个字节的编码Unicode应时而生,2个字节就是16位二进制等同于216=65536,基本可以囊括全球的文字,所以Unicode编码也称为万国码。

Unicode是字符集,而没有编码方法,一种对字符集智能化。

UTF-8是对Unicode字符集的一种编码方法,为更好的存储和传输。

Unicode和UTF-8更加详细的区别能看这里:Unicode和UTF-8之间的区别

更多编码的演变及其之间的关系能看这里:question/ (讲述得很有趣)

电子计算机容量
 1位 = 1bit
 8bit = 1byte = 1字节 1个字节就是二进制的8位,ASSIC码中表示1字符
 1024bytes = 1kbytes =1KB 1024字符,小文档 ,几百k可以表示一张图片
 1024KB = 1Million Bytes = 1MB = 1兆 几万字的文档, 大的图片
 1024MB = 1Gigabytes 一个清晰的电影,不是高清,高清能达到数10个g
 1024GB = 1TB
 1024TB = 1PB
解释型语言和编译型语言

编译型 = 全部翻译,再执行 ,翻译=编译 ;优点:执行速度更快;编译型语言:c,c++

编译型语言

解释型 = 边执行边翻译;优点:混合开发,兼容模式好;解释型语言:python,php,java,c#,perl, ruby,javascript

解释型语言

未经允许不得转载:棋哥SEO博客 python笔记2:二进制和编码

发送到:更多 ()