什么是编程语言?

举一个例子:

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

电脑只懂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编译器编译成本地的机器码执行。 相当于编译了两次。

最新文章

  1. BZOJ4488: [Jsoi2015]最大公约数
  2. C语言的字符串分割
  3. svn://59.46.115.123:13690/IOS/trunk/02.DevelopLib/04.Coding/uuridesharing
  4. mac OS X操作--快捷键
  5. FragmentActivity+FragmentTabHost+Fragement instead of TabActibvity+TabHost+Activity
  6. js获取ifram对象
  7. 舵机的PWM控制学习随笔
  8. POJ 1704 Georgia and Bob (Nim游戏变形)
  9. 从事web前端的这些日子
  10. 五毛的cocos2d-x学习笔记06-处理用户交互
  11. Atom编辑器之加快React开发的插件汇总
  12. 公网定制化yum仓库部署
  13. hive命令的三种执行方式
  14. Choose unique values for the 'webAppRootKey' context-param in your web.xml files!
  15. SDN期末作业-通过SDN的应用实现负载均衡
  16. docker之容器管理
  17. Ubuntu 安装IntelliJ IDEA
  18. 配置apache实现对网站某一目录的访问自动跳转到指定目录
  19. [HNOI 2013]切糕
  20. DLL初试

热门文章

  1. 关于mongodb的复合索引新功能
  2. 计算机开放电子书汇总(包括二十多本python相关的图书教程)
  3. Yosemite系统怎么录制 iOS8设备屏幕
  4. C#生成图片缩略图(2种思路)
  5. Apache Tomcat开机后台启动
  6. portotype
  7. SQL注入的字符串连接函数
  8. EasyUI中Grid标题居中方法(jquery实现方法)
  9. 手动刷新magento的索引管理方法
  10. android 保存文件的各种目录列表