如何将java语言转变为汇编语言

如题所述

  流程:

    Java词法分析

    最开始的时候,高级语言编写的程序对编译器来说只是一连串的单个字符组成的字符串。为了让编译器识别这一连串的字符串,需要逐个字符的读取源程序,然后将其切分成有意义的单词,这些被切分后的单词在编译器眼里是以

    <标识,语义值>对的形式存在。

    为了从源程序字符串中依次找出单词,编译器需要具有扫描功能,通常这种扫描器可以用一组有限状态机来实现。为了说明有限状态机是怎么一回事,下面给出一个实例。

    下图为一个识别数字的有限状态机,数字由整数部分和可选的小数部分组成。因此,根据这个有限状态机,250和3.14159都能被识别成一个有效的数字。

    Java语法分析

    完成了“词法分析”后,接下来就是激动人心的“语法分析”阶段。通过语法分析得到语法树。

    Java翻译语法树

    首先,寻找最小表达式,接下来,将最小表达式与其周边的表达式合并。最后,将所有的表达式有序的进行合并,得到最终的汇编语言描述。

    至此,我们便将高级语言翻译成了汇编语言。

温馨提示:内容为网友见解,仅供参考
第1个回答  2014-12-25
java是跨平台的,是很高级的语言。汇编语言是底层的语言。
java一般是在虚拟机上运行,编译成虚拟机的语言,不需要直接编译成实际硬件的语言。
因此,java不可能直接转变为汇编语言的。
如果想要转,只能人工进行,也即是看懂了java程序,再编写一个同样功能的汇编程序。追问

不会

追答

不明白你为什么要把java转汇编。java在虚拟机上用挺好的,不想要虚拟机了?

追问

作业来的

追答

作业?那应该很很简单的,发上来看看?

本回答被网友采纳
第2个回答  2015-10-19
可以先将java打包成成可执行文件.exe,之后用ollyDbg反汇编这个exe文件。
第3个回答  2019-07-20
java不会直接转为汇编,好像是转换为二进制机器码在JVM里运行。
每个程序运行都会先从硬盘中读取数据到内存中。
然后CPU从内存中取走二进制数据指令来进行操作。
你可以用OD从内存地址中提取数据转为汇编。
都19年了,你怕是都懂了,我现在才刚上大学自学中!
第4个回答  2014-12-23
让做汇编的人转~追问

找不到

相似回答