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

java磁盘

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

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

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

热点内容
墙加密区域 发布:2024-11-30 02:33:32 浏览:630
idrac中怎么控制服务器 发布:2024-11-30 02:18:27 浏览:910
蜘蛛矿池服务器地址 发布:2024-11-30 02:13:57 浏览:169
网易云访问记录 发布:2024-11-30 02:13:17 浏览:376
java的数据类型有哪些 发布:2024-11-30 02:12:42 浏览:546
win8访问win7共享 发布:2024-11-30 02:08:33 浏览:340
编程录入错误 发布:2024-11-30 02:01:58 浏览:733
相机存储卡无法读取 发布:2024-11-30 02:00:15 浏览:772
美国访问学者中介 发布:2024-11-30 01:49:47 浏览:491
手机版我的世界网易服务器地铁 发布:2024-11-30 01:38:57 浏览:522