当前位置:首页 » 编程语言 » java磁盘

java磁盘

发布时间: 2024-01-10 03:10:47

① 求问大神 既然硬盘上储存程序代码已经是二进制的,为什么不能直接执行,还需要再编译一下呢

我的理解是:计算机能够执行的是机器指令。程序本身虽然是以二进制文件的形式存储在磁盘中,但是这里存储的只是程序中字面量转换成二进制的形式存储。所以需要通过程序对应的编译器将其编译成对应的机器指令文件。而执行就是执行机器指令文件了。
#就拿java语言来说:
源文件是以**.java的文件形式存储在磁盘中的。但是这样的文件相当于只是将其中的文本转换成了二进制。计算机根本不知道该如何执行。
通过Java的编译器将其转换成**.class文件后,class文件虽然也是二进制存储,但是有自己的结构:魔数,副版本号,主版本号,常量池计数器,常量池,访问标志位,类索引,父类索引等等。但是这个东西计算机不能直接执行的,需要通过Java虚拟机去执行。而Java虚拟机相当于是模拟计算机,也有个程序计数器啥的。我个人认为应该是将.class文件中的字节码通过jvm中的执行引擎转换成对应的虚拟机指令。然后才能执行。而在真正执行的时候虚拟机中对应的虚拟机指令也是要转换成对应的机器指令才能执行

热点内容
手机开屏密码多少 发布:2025-07-03 19:35:48 浏览:800
我的世界梦世界服务器怎么重启 发布:2025-07-03 19:33:20 浏览:543
编译型语言快 发布:2025-07-03 19:31:57 浏览:410
mud服务器搭建 发布:2025-07-03 19:28:37 浏览:494
云存储空间怎么缴费 发布:2025-07-03 19:22:45 浏览:632
双机热备虚拟ip怎么配置域名 发布:2025-07-03 19:09:18 浏览:352
计算数据存储地址 发布:2025-07-03 18:48:29 浏览:713
安卓恢复出厂设置如何退出 发布:2025-07-03 18:40:41 浏览:697
家用电脑和网吧电脑做成服务器 发布:2025-07-03 18:22:07 浏览:860
jsp刷新缓存 发布:2025-07-03 18:18:06 浏览:924