计算机编码基础
计算机基础
应用程序任何操作硬件的请求都需要向操作系统发起系统调用,然后由操作系统去操纵硬件
文本编辑器存取文件的原理
- 打开文本编辑器,文本编辑器在内存中,所以编辑器编写的内容也是放在内存中的,数据断电即消失
- 要想永久保存文件,需要将内存里的数据刷到硬盘中
- 编写py文件(没有执行),跟编写其他文件没有任何区别,都只是编写一堆字符而已
Python解释器执行py文件的原理
- python解释器启动,此时类似文本编辑器启动
- python编辑器相当于文本编辑器,打开py文件,从硬盘读取test.py文件的内容放入内存(python解释器的解释性,决定解释器只关注文件内容,不关心文件后缀名
- python解释器执行刚刚加载到内存中的tedt.py的代码(ps: 在该阶段才是真正的执行代码,才会注意python的语法,执行到代码name= 'egon'时才会开辟出'egon'的内存空间地址.
Python解释器与文本编辑的异同
- 都能干什么
- 把硬盘文件读取到内存中,并显示
- 不同
- python解释器还会执行解释的步骤
字符编码介绍
常用的字符编码有ASCII表、Unicode码utf-8码
为什么不用UTF-8呢?
- 电脑是美国人创造出来的,最初为录入英文字符发明了ASCII表
- 当其他国家使用计算机时,需要录入自己国家的语言,这时候就需要录入自己的字符编码表了
- 中国开辟出gbk,日本规定了Shift_JIS编码,韩国的Euc-kr编码.
- 多国语言码的开发导致沟通障碍,Unicode码解决了识别多国码的问题,它能识别所有种类的字符编码类型
- Unicode解决识别问题,但自身存储过度浪费空间,utf-8码诞生,它用
总结
存的时候用什么码取得时候就用什么码
python2(了解)
python2 中默认使用的字符是Unicode码
python3(掌握)
# codeing:utf-8 utf-8控制的是python3作为文本编辑器的时候以什么格式读取文本内容,python3默认是以utf-8的形式读取字符
python解释器语法定义:
解释定义变量的语法,会开辟一块内存空间放入这个变量,然后这个变量在python3中以Unicode的形式存储,如x=y
中,被python3解释后内存中会变成x=10101011100101
的样式,理论上输出这样形式的二进制文件没染看的懂,python语言在输出前将二进制编码按照终端的编码格式前去编译
解释器定义变量的方法,会开辟出一块内存空间放入这个变量,假设是以utf-8的形式存储,如x='啊
这时候里面的二进制编码会被Unicode转换,无论什么文件格式Unicode都是可以识别出来的