• 计算机语言主要分为三类:1)低级语言包括机器语言、汇编语言、符号语言等;2)高级语言包括BASIC、C、PASCAL、FORTRAN、智能化语言等等;3)专业语言包括CAD系统中的绘图语言和DBMS的数据库查询语言。
  • 高级程序设计语言编写的源程序需要先经过 编译 转换成机器语言的目标程序,然后再把目标程序和各种的标准库函数 链接 装配成一个完整的可执行的机器语言程序才能执行。
  • 汇编语言依赖于机器,高级程序设计不依赖于机器,有良好的可移植性。
  • 用0、1编制的机器语言是计算机能够直接识别和处理的语言,汇编语言和高级语言都必须先翻译成机器语言程序(目标程序)才能被执行。

编译型和解释型语言

1、编译型语言:首先通过编译器将源代码编译(compile)生成机器指令,链接(linker)把各个模块的机器码和依赖库串连起来生成可执行文件,再由机器运行机器指令 (二进制)。
运行时不需要进行编译,有修改则需要重新编译,执行效率高。【C、Visual C++、Visual Basic】
2、释型型语言:源代码不是直接翻译成机器指令,而是先翻译成中间代码,在运行程序的时候才逐行翻译。
有良好的平台兼容性,执行效率较低。【JavaScript、Python、PHP】
3、混合型语言:**【Java】**先生成字节码再在Java虚拟机中解释执行。

C语言的翻译层次


链接器:将多个模块和库程序组合在一起解析所有的引用。
加载器:将可执行程序加载到内存的适当位置,然后处理器可以执行。加载器调用一个动态链接器,使用文件中的额外信息来倒找适当的库并且更新所有外部引用。

  • 静态链接库:库程序成为可执行代码的一部分,不便于程序的更新。尽管不会使用库中的某些部分,库中的所有内容会被加载进程序。
  • 动态链接库:直到程序运行的时候,库的例程才会被链接并加载。

Java的翻译层次


java程序首先被编译成一个二进制版本的java字节码形式,其中由编译器定义所有的地址。字节码文件可以在解释器(java虚拟机上运行),运行时,java虚拟机链接java库中一些需要调用的函数。及时编译器在运行它的电脑上能够选择性地把一些方法编译成宿主机上地本地机器语言,以此得到更高的性能。

书小宅之编程语言——编译与执行相关推荐

  1. 书小宅之网页设计——用之有道

    网页标题title:title定义的标题仅是在浏览器标题栏中显示的信息.title作为属性用来定义提示文本. 网页内容的标题hi:一般一个网页应该只有一个一级标题(主标题),也就是说网页内容应该只用依 ...

  2. 书小宅之概念汇总——胜读十年书

    计算机基础 世界上第一台电子计算机于1946年诞生于美国. 1945年,ENIAC 的顾问.美籍匈牙利数学家 冯·诺依曼 在为一台新的计算机EDVAC (EDVAC是电子离散变量计算机的缩写,是世界上 ...

  3. 书小宅之android——聊天界面的实现

    制作Nine-Patch图片 说明:一种被特殊处理过的图片,指定哪些区域可以被拉伸,哪些区域不可以. 从android Studio2.3开始,不再单独提供draw9patch.bat文件,要生成Ni ...

  4. 书小宅之ubuntu安装nginx教程

    1.为了管理方便,在home中新建一个arm文件夹. 2.nginx的下载地址:https://nginx.org/en/download.html 使用虚拟机的浏览器打开上述地址,下载如下红框处的压 ...

  5. 书小宅之C#——实现的第三方程序嵌入自己的WinForm

    首先创建一个C#的窗体应用(.net框架): 在左侧隐藏的工具箱中可以添加控件,对自己的窗体做初步的布局. 这里记录我在做项目的过程中遇到的两个较严重的问题: 问题1:用重叠的Panel实现界面切换, ...

  6. 书小宅之网页设计——二次贝塞尔曲线和三次贝塞尔曲线

    贝塞尔曲线起始点和终止点在曲线上,方向控制点不再曲线上.二次贝塞尔曲线有一个控制点,三次贝塞尔曲线有两个控制点. 二次贝塞尔曲线 定义和用法 quadraticCurveTo() 方法通过使用表示二次 ...

  7. 书小宅之网页设计CSS3——圆角矩形

    圆角半径四个方向的参数都写时,对应的顺序是左上,右上,右下,左下. border-radius: 1-4 length|% / 1-4 length|%; 注释:按此顺序设置每个 radius 的四个 ...

  8. 书小宅之网页设计CSS3——多边形

    CSS3绘制三角形和梯形 div的边框属性 border-style 属性用于设置元素所有边框的样式,或者单独地为各边设置边框样式. 只有当这个值不是 none 时边框才可能出现. 1.border- ...

  9. 书小宅之网页设计——标签

    HTML常用标签 文档结构标签 <html>--</html> :标识HTML文档的起始和终止. <head>--</head> :标识HTML文档的头 ...

最新文章

  1. JwtBearer -- Http身份验证
  2. 20162313苑洪铭 第二周作业
  3. python 输出一个 5*5的 三角形_GitHub标星3W+,80个Python案例,带你轻松玩转Python学习!...
  4. 安卓进阶系列-02搜索框(PersistentSearch)的使用
  5. python文件管理
  6. 王国权辞任中国电信股份有限公司执行副总裁
  7. php字符串转二进制数组中,如何将php字符串转成二进制
  8. eclipse中maven工程添加本地库至Maven Dependencies
  9. 程序员选手机那些事儿
  10. Cocos-2d 关于SwallowTouch,进一步解释触摸事件分发机制
  11. oralce数据库创建同义词
  12. html - <thead>标签
  13. 即时通讯系统集成开发
  14. Win7 文件加密存储操作后,如何在事后备份证书、秘钥
  15. 视频摘要和视频浓缩的区别
  16. 撸一撸腾讯的微信支付(C#)
  17. Warshall算法代码实现
  18. 浅谈ALM与PLM区别
  19. (转载)IDEO:以洞悉人性为设计主轴
  20. webug 4.0 第九关 反射型xss

热门文章

  1. XP安装SQLSERVER企业版
  2. 如何管?施工项目才能实现履约创效
  3. 【Shader】简单的水面波纹效果
  4. machine learning ex3
  5. 微软亚洲研究院新推英库拼音输入法
  6. Angular学习笔记四之依赖注入与服务
  7. Win11键盘打不出字怎么办 windows11键盘打不出字的解决方法
  8. 移动互联时代的O2O营销革命
  9. 如何在51单片机实现电子万年历
  10. Ubuntu VLAN配置troubleshooting