机器语言的发展简述
1.机器语言
计算机是基于电工作的,及其语言是站在计算机的角度,说计算机能听懂/理解的语言,而计算机能理解的就是二进制,机器语言是二进制直接编程的,意味着机器语言直接操作硬件的,,是属于低级语言。
2.汇编语言
汇编语言仅仅 是用一个英文标签代表一组二进制指令,毫无疑问,会比机器语言是一种进步,但是直接操作硬件,还是属于比较低级的语言。
3.高级语言
高级语言是站在人的角度,用人类的字符去编写程序,人类的字符是向操作系统发出指令,而非直接操作硬件, 高级语言与操作系统直接打交道,所以开发者 不需要考虑硬件的细节,因此开发效率大大提高,正因为如此,高级语言离硬件比较远,更贴近人类语言,人类可以就理解,而计算机需要翻译才可以理解,所以执行效率低于机器语言 。
分为:编译型 和 解释型
编译型(如C语言)
类似谷歌翻译 把程序所有代码编译成计算机能识别的二进制指令,之后操作系统会拿着编译好的二进制指令直接操作硬件。
优点:编译一次 可以直接拿着结果重复运行,无需再次翻译,执行效率高于翻译型。
缺点:只能对某一平台使用,不能跨平台使用。
翻译型(如python)
需要一个解释器,解释器会读取代码,一边翻译,一边执行。
优点:代码运行依赖解释器,不同平台有不同版本的解释器,因此可以跨平台使用。
缺点:每行执行都要翻译,执行效率低于编译型。
以上做个对比
开发效率:机器语言 <汇编语言<(编译型<解释型)
执行效率:机器语言>汇编语言>(编译型>解释型)
学习难度:机器语言>汇编语言>编译型>解释型
跨平台 : 解释型>编译型
2.python解释器
IT行业的定律:一定不要闲下载最新版本。
python的版本: 2.0 3.0版本
3.python执行代码的两种方式:
1.交互性:有来有往
2.命令行执行:
python约定俗成的后缀名定义为.py 就是一个单纯的 文件名
5.IDE工具 pycharm
专门用来写Python 代码
优点:提高开发效率
缺点:比较占用内存资源
6.注释:
单行注释 #
多行注释:用三引号
'''
'''
" " "
" " "
注释的快捷键是:CTRL +?
7. 变量
1、 变:事物的状态是可以变化的
量:描述事物的状态
a=1
2、变量的 3个特征:
值:value
变量的类型:type
变量的内存地址:id
3、变量名的命名规范
1.只能由字母 数字 下划线组成
2.坚决不能用中文
3、区分一下大小写
4、不能以数字开头
5、尽量不要以下划线开头,因为下划线开头 有特殊的含义
4.变量的命名风格:
1、驼峰体
UserAge = 18
print(UserAge)
英文的首字母都是大写
2、下划线
user_age = 18
print(user_age)
这种比较常用
python 中没有常量
NAME = "SEAN"
AGE = 21
python 程序员约定俗成 讲字母全部大写的的变量就常量
小整数池
python实现int的时候有个小整数池的概念,为了避免创建相同的值而重复申请内存空间而带来的效率的问题。python解释器启动的创建的小整数池,范围在[-5,256] 该范围内的小整数被全局范围内的解释器使用,id相同 永远不会被垃圾回收机制收回。
垃圾回收机制
a = 10
a = 11
方式
1.引用计数 当内存中的值引用为0时,垃圾回收机制就会自动清除;
2.标记-清除 当应用程序将内存撑满时,会自动停止,清除垃圾;
3.分代回收