zoukankan      html  css  js  c++  java
  • 从0和1到编程语言

    什么是编程语言?

    举一个例子:

    如果我们不会英语,和一个不会中文的老外交流,怎么办?找个翻译。

    电脑只懂0和1组成的机器语言。 用0和1告诉计算机做事很累;人类语言易了解,学习快,效率高。

    如果定义一套规范语法,说明如何将人类语言转换成机器语言。这样就可以使用人类语言来告诉计算机做事,这就是编程语言。
    将编程语言翻译成机器语言,即0和1, ——这个过程叫编译。

    编程语言有很多种。前面了解到的汇编语言,Python,C/C++语言,Java、C#等等。

    机器语言 —— 用0和1描述指令
    汇编语言——实质和机器语言相同,只是指令采用英文缩写更容易识别和记忆
    高级语言——和汇编相比,将多个相关的机器指令合并成为一条指令,去掉了具体的操作。Python、C/C++语言,Java、C#、php等都是高级语言。

      

    java一般做企业开发,C/C++  主要用来系统开发,php主要用来web开发。

    解释型语言和编译型语言

    计算机本身不能识别高级语言,当我们运行一个程序的时候,需要一个“翻译” 来把 高级语言转换成计算机能读懂的语言。 “翻译”过程分两种:

    1.  编译

    编译型语言在执行程序前,首先会通过编译器执行一个编译的过程,把程序编译成机器语言。 之后,程序再次运行的时候,就不要“翻译”了,而是可以直接执行。比如C语言。 编译型语言的优点在于在运行程序的时候不用解释,可直接利用已经翻译过的文件。

    2. 解释

    解释型语言就没有编译的过程,而是在程序运行的时候,通过解释器逐行解释代码,然后运行。比如python。

    java等基于虚拟机的语言兴起之后,编程语言又不能单纯的在划分为编译型语言或解释型语言。 java是首先通过编译器将代码编译成字节码文件(为了跨平台),然后在JVM执行java字节码,将其解释成机器语言。 所以我们说java是一种半编译半解释的语言。
    C#,在第一次执行的时候,将代码编译成IL中间码文件,然后由JIT编译器编译成本地的机器码执行。 相当于编译了两次。

    键盘敲烂,薪资上万                 -----by 小老弟
  • 相关阅读:
    翻String.Format源码发现的新东西:StringBuilderCache
    禁止Asp.Net WebService 的Test页面功能
    利用XML序列化和Asp.Net Web缓存实现站点配置文件
    使用.NET配置文件appSettings元素的File属性
    <probing> 元素指定扩展Asp.Net加载程序集位置
    Windbg .net内存调试有用的命令(笔记 )
    The Dangers of the Large Object Heap(转载,LOH内存碎片情景重现)
    Advanced .NET Debugging: Managed Heap and Garbage Collection(转载,托管堆查内存碎片问题解决思路)
    调试.NET程序OutOfMemoryException (转载)
    mysql数据库之索引和分析索引
  • 原文地址:https://www.cnblogs.com/syncmr/p/8413195.html
Copyright © 2011-2022 走看看