同样是高级语言为什么C语言可以编写51单片机程序,JAVA却不能编写?

发布于2021-12-14 19:22:33
6个回答
admin
网友回答2021-12-14

其实有基于jvm的芯片,硬件级别的虚拟机,可以直接跑java,不过没火起

admin
网友回答2021-12-14

谁说不可以,java之初就有这个功能,只是现在没人用了,编译器也没人做了

admin
网友回答2021-12-14

无论Java还是C,任何一种高级语言都可用来编程控制单片机,只要开发出相应的编译器用以转换相应的高级语言到机器码即可。还有Java的虚拟机(Virtual machine)不是必须的,它只是用于多操作系统为目地的。实际上,虚拟机就是一个翻译器(Interpreter), 安装在Internet Explorer 或不同的操作系统的机器中,把Java的中介码(Native code)转换成相应的操作系统的机器码而已。翻译器与编译器是有区别的。

admin
网友回答2021-12-14

Java需要运行在虚拟之机这个抽象层之上,无法在硬件上直接运行,而C语言编译后可以直接运行在硬件之上。单片机由于受到内存和性能的限制并不会安装虚拟机,所以无法运行Java。

admin
网友回答2021-12-14

1、C语言宝刀不老的优势就是:代码简洁且与单片机关系密切。

2、玩单片机就是用C语言,别整别的幺蛾子。你搞别的会被人笑话。

3、C语言入门其实很快的,多学一门编程语言没坏处。

4、JAVA是基于C的,最后转换成机器代码比C繁琐(汇编语言转换更快,但写起来麻烦,500行汇编代码用C语言100行就够了)。

5、单片机的各种库基本都是C语言(我说的是基本都是,不是全是),一些系统底层的程序也基本都是C语言写的(STM32单片机启动程序有汇编文件)。要是把这些东西全用JAVA写好那也行,但没人懒得开发。

6、单片机写程序用的主流软件Keil、IAR、Arduino,基本都是用C语言写程序;现在还没听说过哪个软件将单片机和JAVA联系在一起的。

7、高手都是会4种以上编程语言的,只会一种,算不算高手。

admin
网友回答2021-12-14

就跟你想去百米开外的商店买东西一样,

你走去很方便,

你说这个路程,可以考虑抽象一下,我要有个交通工具,这样以后商店远了,我也能方便去,所以你开车去了~~

最后发现,还是走着方便~

回到
顶部