时间:2021-07-16 | 标签: | 作者:Q8 | 来源:网络
小提示:您能找到这篇{汇编器与虚拟机}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的汇编器与虚拟机内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
上篇文章主要观点是程序实现就是一个翻译过程,最终会翻译成(JIT)CPU指令。我们倒着推,那么GIT的上层就是虚拟机,而虚拟机是针对中间字在网络营销节码的。中间字节码就是油汇编器对汇编语言文件的一个翻译。 那么我们先来谈谈汇编器(虚拟汇编):
对于汇编器实现中的词法分析肯定是很简单优质的网站建设的,语法分析也嗯容易,因为其语法大致有三种:
1:函数定义
2:标签定义
3:定义变量
3:汇编指令语句
所以语法分析的结果就是要得到所有的函数定义表,然后每个函数中又有标签表和变量表)
我们的目的是生成中间字节码,以至于微博怎么推广产品提高速度,那么尽量让每个指令干自己指令内部的事情而不需要关心其他(否则速度就降下来了)。
这样虚拟机的实现也就更简单。
因为虚拟机的实现大概只需要一个函数表以及一个运行时堆栈就OK。那么我们的中间字节码中的虚拟指令就应该只针对栈进行操作(而且都是固定了偏移的)
(想象一下,如果不存在汇编器,而进行纯粹的语言解释器,那么会通过一个map结构去查询某个变量,而先通过汇编器-(可以看成预处理,事实上预处理也就是一个翻译过程)
去生成中间指令,给每个变量安排一个相对索引,那么查询某变量,只需要一个常量时间-更短的时间即可)
(正因为预处理-翻译过程,所以才使得下一步过程的执行速度才更快)
接下来就是代码生成,写入OPcode,然后它具有参数,而参数无非就是一个特定偏移。
虚拟机去执行这个中间字节码,提供一个堆栈作为运行时。
|
上一篇:JAVA虚拟机管理内存
下一篇:如何将Virtualbox和VMware虚拟机相互转换
小提示:您应该对本页介绍的“汇编器与虚拟机”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通汇编器与虚拟机的相关事宜。
关键词:汇编器与虚拟机