总结二

编程语言的发展史

1.机器语言(直接用二进制跟计算机沟通交流,直接操作硬件)

   优点:计算机能够直接读懂,速度快

   缺点:开发效率极低

0000,0000,000000010000 代表 LOAD A, 16
0000,0001,000000000001 代表 LOAD B, 1
0001,0001,000000010000 代表 STORE B, 16
0001,0001,000000000001 代表 STORE B, 1[1]

2.汇编语言(用简单的英文标签来表示二进制,直接操作硬件)

   优点:开发效率较高于机器语言

   缺点:执行效率略低于机器语言

打印一句hello world需要些以下代码
; hello.asm
section .data ; 数据段声明
msg db "Hello, world!", 0xA ; 要输出的字符串
len equ $ - msg ; 字串长度
section .text ; 代码段声明
global _start ; 指定入口函数
_start: ; 在屏幕上显示一个字符串
mov edx, len ; 参数三:字符串长度
mov ecx, msg ; 参数二:要显示的字符串
mov ebx, 1 ; 参数一:文件描述符(stdout)
mov eax, 4 ; 系统调用号(sys_write)
int 0x80 ; 调用内核功能
; 退出程序
mov ebx, 0 ; 参数一:退出代码
mov eax, 1 ; 系统调用号(sys_exit)
int 0x80 ; 调用内核功能

3.高级语言

   编译型:一次翻译之后,就可以拿着翻译后的结果多次运行  C

       优点:执行效率高

       缺点:开发效率低 

   解释型:一行一行的翻译  Python

       优点:开发效率高

       缺点:执行效率低

  学习难度:机器语言>汇编语言>高级语言

  执行效率:机器语言>汇编语言>高级语言

  开发效率:高级语言>汇编语言>机器语言

Python语言是一种胶水语言,也叫作调包侠

python解释器:分为python2.X和python3.X     在IT行业,不要贸然使用最新版本的软件!

环境变量:系统查找文件的所有路径配置

多版本共存:不要直接改原本文件名,拷贝一份,再重命名

两种python程序运行的方式

      1.交互式

            优点:输入内容立刻就有对应的返回结果

            缺点:不能永久保存数据

       2.命令行(文本的形式)

            优点:数据可以永久保存

            缺点:目前运行文本的方式有点麻烦

   ps:文件后缀名,仅仅是给人看的,后缀名的不同功能是程序员写的。py文件默认的结尾就是.py

 运行一个python文件需要走的步骤:

        1.将解释器代码从硬盘读取到内存(就等价于双击了word图标)

        2.将写好的文件由硬盘读到内存(就等价于你双击了一个word文档)

        3.解释器解释读取py文件中的内容,解释成计算机可以识别的语言(如果是一个普通文本文件,仅仅只会将文件内容展示到屏幕上给用户查看,不会检测翻译文件内容)

        ps:python解释器与普通的文本编辑器前面两步是一样的,仅仅第三步不一样(一个是解释语法,一个是文本展示)

IDE开发编辑器:pycharm仅仅是一个方便我们开发python程序的工具。

变量

1.什么是变量:会变化的存储空间,这个空间存储的信息是不固定的。量:衡量/记录事物的状态/特征   变:状态/特征是可以变化的

2.为什么要有变量:帮助你记录保存事物的某种状态或特征

3.变量的定义:变量必须先定义后调用(使用),变量名不要加引号

4.变量的三要素

  1.id():返回的是一串数字,内存地址

  2.type():返回的是该变量对应的数据的类型

  3.value:该变量只想内存中的数据的值

5.小整数池()

>>> a = 257
>>> b = 257
>>> id(a)
2919979319120
>>> id(b)
2919979576208
>>> c = 256
>>> d = 256
>>> id(c)
1642892736
>>> id(d)
1642892736

编写程序时要多多注释,注释是代码之母。

常量:不可改变的量

   python中没有常量,通常将全大写的变量名看作常量(python程序员约定俗成的)。

垃圾回收分类

   1.引用计数:内存中的数据如果没有任何与其绑定的变量名时,那么会被自动回收

   2.标记清除:如果内存快被某个应用程序占满时,就会自动触发

   3.分代回收:根据存活时间的不同,划为不同的等级,等级越高垃圾回收机制扫描的频率就越低

 

   

 

posted @ 2019-07-09 09:53  二哈强拆Python世界  阅读(146)  评论(0)    收藏  举报