zoukankan      html  css  js  c++  java
  • 编程语言类别;运行Python程序的方式;变量和常量;Python程序的垃圾回收机制;

    编程语言分类

    编程语言分为:

    1.机器语言:直接用二进制的0和1和计算机(CPU)直接沟通交流,直接操作硬件。
    
    2.汇编语言:用简单的英文标签来表示二进制数,直接操作硬件。
    
    3.高级语言:它并不是指某一种语言,而是包括很多编程语言,比如:PHP、c/c++、Java、C#、python、go等
    
    # 机器语言
        优点:不需转换,计算机能直接读懂,执行速度快。
        缺点:二进制代码复杂多样,理解甚难,开发效率低。
        ps:站在奴隶的角度说奴隶能够听得懂的话
    
    
    0000 代表  加载 (LOAD)
    0001代表 存储(STORE)
    
    暂存器部分示例
    
        0000  代表暂存器 A
        0001  代表暂存器  B
    
    存储器部分示例
    
        000000000000  代表地址为 0的存储器
        000000000001  代表地址为 1的存储器
        000000010000  代表地址为 16的存储器
        100000000000  代表地址为 2^11的存储器
        0000,0000,000000010000 代表 LOAD A, 16
        0000,0000,000000000001 代表STORE B, 16
        0001,0001,000000000001 代表 STORE B, 1[1]
    
    # 汇编语言
        
    优点:开发效率高于机器语言
    缺点:执行效率较机器语言低
    
    # 高级语言
    
    高级语言可分为两类:
    
    编译型:在应用源程序执行之前,就将源程序代码“翻译”成目标代码(机器语言),因此目标程序可以脱离其语言环境独立执行(编译后生成的可执行文件是CPU可理解的二进制代码组成的)。比如:c、c++ 、deiphi
    
    优点:使用方便,程序执行效率较高。
    缺点:开发效率低,一旦应用程序需要修改,必须先修改源代码,再重新编译生成目标文件才能执行,只有目标文件而没有源代码,修改很不方便,依赖编译器,跨平台性差些。
    
    解释型:类似于“同声翻译”,应用程序源代码一边由相应语言解释器“翻译”成目标函数一边执行,不能生成可独立执行的执行文件,应用程序不能脱离解释器,但方法比较灵活,可以动态的调整修改应用程序。比如:Python、java、PHP
    
    优点:开发效率高
    缺点:执行效率低
    
    学习难度
    		机器语言>>>汇编语言>>>高级语言
    执行效率
    		机器语言>>>汇编语言>>>高级语言
    开发效率
    		高级语言>>>汇编语言>>>机器语言
        
     因此Python语言被称为“胶水语言”、“调包侠”。
    

    运行Python程序的两种方式

    1、交互式

    优点:输入内容立刻就有对应的返回结果
    缺点:无法永久保存数据,离开Python应用程序,立刻消失。

    2、命令行

    优点:可以永久记忆
    缺点:运行该文件相对麻烦些

    运行一个PYthon文件需要的步骤(*****)
    
        1)将Python解释器代码从硬盘读到内存(等价于双击word图标)
        2)将你写好的Python文件从硬盘读到内存(等价于双击word文档)
        3)解释器读取Python文件中的内容,解释成计算机能够识别的语句
        (如果是一个普通文件,仅仅只会讲文件中的内容显示到屏幕上)
    
    IDE开发编辑器
    	pycharm仅仅只是一个方便我们开发Python程序的工具而已
    

    变量与常量

    1.变量

    ​ 量:衡量/记录事物的状态/特征
    ​ 变:状态/特征是可以变化的

    ​ 有了变量才能帮助人记录保存事物的某种状态或特征
    ​ 变量必须先定义后调用,变量名不加引号。

    变量三要素
    id():返回的是一串数字,即是内存的地址

    type():返回的是该变量对应值的类型

    value():该变量指向内存中数据的值

    2.常量

    Python里没有常量,通常将全部用大写字母写成的变量名看作是常量(是Python程序员约定俗成的)

    3.小整数池

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

    垃圾回收机制

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

    2.标记清除:当内存快要被某个程序占满的时候,会自动触发;

    3.分代回收:根据值的存货时间不同,划分不同的等级,等级越高,垃圾回收扫描的频率越低。

    垃圾回收机制详见该链接:https://www.cnblogs.com/zhangchaocoming/p/11891411.html

    
    
  • 相关阅读:
    Java并发编程:CountDownLatch、CyclicBarrier和Semaphore (总结)
    Java线程面试题 Top 50 (个人总结)(转)
    rabbitMQ windows 安装 入门(转)
    Java并发编程:volatile关键字解析(学习总结-海子)
    关于Sychronized和volatile自己总结的一点点理解(草稿)
    FWORK-数据存储篇 -- 范式与反模式 (学习和理解)
    Synchronized的原理及自旋锁,偏向锁,轻量级锁,重量级锁的区别(摘抄和理解)
    vcfc之zk+postsql+keystore(cassandra)框架分析
    CAP理论-解析
    java多线程通信 例子
  • 原文地址:https://www.cnblogs.com/zhangchaocoming/p/11891739.html
Copyright © 2011-2022 走看看