程序这个概念范围是很广的。。。。
不过,我们一般都是指计算机程序。。。。
计算机只能执行他所能识别的机器码,这种机器码是一组有序的机器指令,这些指令是人为地设计出来的,要求计算机按照人的意志去做相关的工作(计算,图像处理之类),不同类型的计算机所执行的机器码是不同的
至于高级语言和汇编语言
汇编语言,由于机器码是由二进制表示的,这种二进制难以记忆,所以用汇编语言的符号来表示这些二进制指令,汇编语言需要经过汇编程序把这些符号翻译成机器码
高级语言,虽然人们使用汇编语言帮助记忆这些机器码,但是,汇编语言比较难以理解,不符合我们人的一半语言思维,于是就出现了高级语言,高级语言,比较接近我们所能理解的程度,高级语言必须经过编译程序,把它翻译成为目标机器码
还有一种,就是解释运行的,一半在计算机上有一个解释器,高级语言不需要直接翻译成为目标程序,只有在执行的时候,才被翻译。。。
像JAVA。。。。
用语言编写的计算机能够识别的代码。我们运行的软件是要经过编写的,程序员编写程序的过程中需要他们的“语言”:音乐家用五线谱,建筑师用图纸……那程序员的工作的语言就是“源码”了。
其实就是指编写的最原始程序的代码。
我们平时使用软件时就是程序把“源码”翻译成我们可直观的形式表现出来供我们使用的。
比如我们现在这个网页,换成源码就是一堆按一定格式书写的文字和符号,但我们的浏览器帮我们翻译成眼前的摸样了
硬件当然只能读懂机器语言,也就是0和1组成的代码,因为这样就可以通过电流的通断来传递信息了,CPU里就是高速的电流通、断,CPU主频越高,说明单位时间电流振荡越快。
至于“翻译”,就都是由 *** 作系统来完成了,每种 *** 作系统,都会有:基本输入\输出系统(BIOS)、 *** 作系统、程序设计语言处理系统(如C语言编译器)、数据库管理系统、实用程序等,其中,程序语言处理系统就是完成高级语言、汇编语言到机器语言这项任务的,你可以去百科看看“程序设计语言处理系统”的详细解释。
芯片里面没有程序,根据“冯诺依曼”的“存储程序”设计思想,程序都是存储在存储器中的,而芯片只是完成计算的,他是受程序控制的。
最原始的工作原理,就是通过三极管
指出栅极起控制作用),给它的栅极输入高电平(1)另外两极就导通(1)或断路(0),输入低电平(0)另外两极就断路(0)或导通(1)。
然后由各种电子元器件组成各种门电路(与、或、非,同,四个门以及这四个玩意组合起来的门电路)、“锁存电路”、“时序电路”等各种《数字逻辑电路》课程里会讲到的电路。
在《计算机组成原理》课程里,会教你如何把这些电路组成加法器、减法器、乘法器……然后这些各种“器”以及上述各种门电路组成芯片,芯片的引脚就是上面提到的三极管之类某些原件的某些极。小一些的芯片只有编号编号,比如4001之类的,早期并没有CPU的概念,所以早期的CPU也是用编号的,比如4004,8008,8080,8086……然后给某个引脚输入高电平(1)或者低电平(2),里面各种三极管会通通断断做一些改变,另外一些引脚就会在高电平(1)和低电平(0)之间做一些变化,就是你拿到的输出。输出连接到另一个芯片的某些引脚做输入,然后就……这门课还会教你如何用微码来编写CPU的微码指令,将读到的机器码转化为对应的微码程序,并用微码程序实现机器码命令的功能。
接下来《汇编语言》课程会教你写汇编程序,汇编的编译器会把你写的东西翻译成机器码。
代码,通过编译器,编译成汇编指令,最终翻译成机器码
机器码对应的0和1,变成了引脚的高低电平,输入给了译码器,调用(译码器输出的信号转换成了具体某个微码程序的地址)指定的微码程序,微码程序改变CPU内部某些模块的引脚的高低电平,控制具体的门电路,改变CPU某些引脚的输出,这些输出的引脚里,某几个引脚的高低电平改变了总线的行为,总线将剩下的输出信号给了指定硬件,比如内存/显卡。。。指定硬件根据这些信号由不同硬件做了不同事。
计算机能直接执行的程序是用“机器语言”编写的。
机器语言是机器能直接识别的程序语言或指令代码,无需经过翻译,每一 *** 作码在计算机内部都有相应的电路来完成它,或指不经翻译即可为机器直接理解和接受的程序语言或指令代码。
机器语言具有灵活、直接执行和速度快等特点。不同型号的计算机其机器语言是不相通的,按着一种计算机的机器指令编制的程序,不能在另一种计算机上执行。
以上就是关于高级语言程度和汇编语言程序如何才能被计算机识别和执行全部的内容,包括:高级语言程度和汇编语言程序如何才能被计算机识别和执行、计算机是怎么识别源码的、计算机是怎样读懂程序的等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)