虚拟机

本文介绍了虚拟机的基本概念,包括其在不同编程语言中的实现方式。重点探讨了编译型语言C与解释型语言Java中虚拟机的工作原理,以及它们如何帮助程序与不同平台之间实现良好的兼容性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.  实现一种计算机程序设计语言时,运行时的数据结构和程序执行中的算法定义了一台虚拟机。

 

2.  虚拟机的机器语言是由语言翻译器所产生的可执行代码,如果语言是编译型的,则它的形式就是实际的计算机二进制代码,实际的机器可以直接执行;如果语言是解释型的,则结构和形式可以是任意的。

 

3.  虚拟机的数据结构就是程序执行时的数据结构,基本操作是那些在执行时实际执行的操作。

 

4.  编译型语言C所定义的虚拟机的机器代码是二进制代码。C源程序要生成可执行程序需要经过C编译器编译成目标机器代码,不同的平台要编译成不同的目标代码。

 

5.  Java虚拟机是Java程序的运行环境,Java虚拟机是一个虚拟的计算机,它有自己的处理器、堆栈、寄存器,还有相应的指令系统,同时也有支持的数据 结构和基本操作。要运行任何Java程序首先必须通过Java编译程序翻译成Java虚拟机可以理解的目标码(Java虚拟机将这种机器码称为字节码 byte code),执行Java程序时实际上是在Java虚拟机上执行字节码,虚拟机负责将字节码解释称特定平台上的机器指令,Java程序运行时的数据结构就 是虚拟机所定义的数据结构。虚拟机在平台和程序之间充当了纽带作用,承上启下,进一步抽象了系统平台,使得Java程序与具体机器的体系结构、操作系统平 台无关,因而成为Java语言的一个重要的特性。

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值