什么是编程语言?

· 什么是编程语言?

  提及编程语言,就必需要说计算机,明白了计算机的运行原理,才能明白什么是编程语言。(为了更容易理解,简化不少细节,例如控制器,加法器等)程序员

  现代大多数计算机(包括咱们用的)都是用电信号来记录信息,而如今的计算机只能识别两种状态的的信号,即高电平(高电压,用 1 表示)和低电平(低电压,用 0 表示),计算机用晶体管来储存这种状态,以此记录信息。编程

如上图中第二个和最后一个晶体管是高电平,其余是低电平(你们要习惯电平这个术语,之后都会这么说,其实就是电压的状态),这样八个晶体管共同储存了  01000001  这样一段信息,转换为十进制为数字 65,若是表明了一个字符,那么根据ASSIIC码转换是 A。编程语言

  

  计算机也是机器,CPU 只负责计算,自己不具有智能。你输入一条指令(instruction),它就运行一次,而后停下来,等待下一条指令。它和豆浆机、热水器同样要人来控制进行操做,既然计算机只能识别向上面同样的一、0信号,是否是咱们控制它也要用相同的方式?学习

  

  事实上,还真是这样的。计算机的核心CPU(中央处理器),有一套本身的指令手册,叫作指令集。指令集是这个CPU所可以理解并执行的全部操做的集合,也就是说,CPU只能作指令集里面有的操做,指令控制CPU作出反应。咱们使用吹风机的时候,上面会有几个按钮,打开关闭不一样的按钮吹风机会执行相应的操做,CPU也同样,当你输入指令时,它会进行相应的操做,这些指令都是二进制的,称为操做码。假设如今设计一块“CPU”,只能执行加减运算,只能对两个固定的数操做,加的指令的操做码为 11111111,减的指令的操做码为 00000000。优化

当你给他指令为加的指令,它会把A加b存在结果里面,减也同理,这甚至简单到不能称为一个CPU,只是演示指令是怎么工做的。在计算机刚诞生的时候,程序员经过打孔的纸带来向计算机输入数据和指令,有孔是1,没孔是0,这样的的语言叫作机器语言,也就是二进制语言。spa

  

  对于人类来讲,二进制程序是不可读的,根本看不出来机器干了什么。这样的语言操做起来极其不方便,上面的“CPU”只有两个指令,而正常的CPU都是有不少指令的,很是难以理解,容易出错,因此诞生了一种低级语言,也就是汇编语言(对,人类的进步就是由于懒)。汇编语言将繁琐的指令操做,0和1,用字母代替,汇编语言是二进制指令的文本形式,与指令是一一对应的关系。例如 11111111 这样的东西,用 add代替便可,只要还原成二进制,汇编语言就能够被 CPU 直接执行,因此它是最底层的低级语言。汇编语言提升了控制计算机的效率,以及程序的可读性,让人能写出更大的程序同时便于修改。翻译

  

  人类在“懒”上的不断追求,诞生了高级语言。高级语言的语法和结构更相似汉字或者普通英文,且因为远离对硬件的直接操做,使得通常人更容易学习。C/C++,C#,JAVA,Python,R,Go等等语言都是高级语言,高级语言编写的程序叫作源程序,由于这种语言更接近人类的天然语言,因此必须经过翻译来让计算机明白,这一过程叫作编译。编译程序把一个源程序翻译成目标程序的工做过程分为五个阶段:词法分析;语法分析;语义检查和中间代码生成;代码优化;目标代码生成。主要是进行词法分析和语法分析,又称为源程序分析,分析过程当中发现有语法错误,给出提示信息,这个过程,按照该语言的规则,将语句拆分红一个个指令,再将指令转换为二进制,成为计算机能够识别的程序。设计

  

  编程语言就是操做计算机的控制器,对编程语言的原理和计算机工做的原理更好的理解有助于学习和使用语言,本文中有不少地方为了便于理解,省略了不少概念,也有一些地方作了口头化表述,只是但愿帮助你们理解编程,早日入门编程。3d

对您有帮助的话请点个赞呗~~(左侧小手手点赞)
本文由博客园A-CAT原创编辑,转载请注明出处,谢谢!(点击右侧小火箭可快速返回顶部)blog

相关文章
相关标签/搜索