问题标签 [jasmin]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 在java中使用ANTLR格式化jasmin的输出
此语法将输出一个数字44
,22
但输出将如下所示 ( 4422
)
我想在数字之间添加一个空格,以便输出为( 44 22 )
我认为有些东西需要改变
java - Java 类转换成 Jasmin 汇编代码
有没有办法将此代码转换为 jasmin 汇编代码?我很难找到一种方法来做到这一点。答案将不胜感激。
java - 在 Jasmin 中获取 ClassFormatError
我正在尝试创建一个使用 jasmin 打印一些文本的程序。这是整个代码的一部分:
编译后,我收到此错误:
似乎错误出现在第 4 行的某处,因为在将该行作为注释后,我没有收到任何错误。
java - 字符串数组上的 Java ByteCode [putstatic 中的错误类型]
我正在尝试为等效于以下内容的类编写 JVM 字节码:
我写的字节码:
我使用 Jasmine 运行字节码并为 getfield/putfield 获取错误类型错误,但无法弄清楚原因。
有谁知道问题出在哪里以及如何解决?
java - Java字节码最终字段分配(茉莉)
在 java 语言中,final 字段在初始化时采用立即值并且不能再更改。在 java 字节码 (jasmin) 中,如果我创建一个 final 字段,它会忽略我在初始化时分配给它的立即值,我可以稍后像任何其他变量一样更改它。
前任。爪哇代码:
输出:
前任。茉莉字节码:
输出:
没有错误?我还测试了打印出新的 CONST 值,它就像一个普通变量一样工作。为什么 final 字段不像在 java 代码中那样工作?
java - Jasmin 的 Java 字节码:为什么屏幕上没有打印消息?
我最近对 Java 字节码产生了兴趣,并创建了以下 Hello World 程序。
打印了“Hello World”,但是我不知道为什么没有打印“Creating awesome object”。你能帮我弄清楚我做错了什么吗?
java - 使用 Gradle 从 Kotlin 链接到 JVM asm 定义的类
我对 Android 应用程序进行了以下设置:
里面的源文件src/main/asm/SomeJVMClass.j
是Krakatau格式的 JVM 程序集(和 Jasmin 差不多)。我想使用它从我的主要 Kotlin 源代码中定义的类activity.kt
。
在我尝试使用 Gradle 自动执行此操作之前,仅手动将文件组装到其中build
并没有帮助。这是我尝试过的:
- 做一个
gradle build
来获取骨架build
目录(这当然会因为 Kotlin 编译器找不到而失败SomeJVMClass
) 我手动运行 Krakatau 以将其类文件放入
/li>build/intermediates/classes/{debug,release}
:重新运行
grade build
,希望 Kotlin 现在可以找到.class
文件;但没有任何改善:
所以第一个问题很明显,我应该把生成的.class
文件放在哪里,以便 Kotlin 编译器可以找到它们。第二个后续问题是如何实现自动化,以便gradle build
在运行 Kotlin 编译器之前,一个命令将首先运行 Krakatau 汇编器。
作为参考,这里是我的源文件:
src/main/asm/SomeJVMClass.j
:
src/main/kotlin/activity.kt
:
jvm - JVM中的逻辑非操作
我正在尝试使用 Jasmin 模仿 NOT 门的行为。行为如下:
- 从堆栈中弹出一个整数
- 如果整数为 0,则将 1 推回堆栈
- 否则将 0 推回堆栈
我已经尝试了两种不同的尝试,但无济于事。
尝试1:
当然,上面的例子不起作用,因为ifeq <offset>
它接受了一个标签而不是一个硬编码的整数作为它的偏移量。是否有与 ifeq 类似的操作接受整数作为参数?
尝试2:
问题在于我的代码中不止一个地方使用了 NOT 操作。我尝试将 ifeq 与标签一起使用,但完成后我如何知道使用 goto 返回哪一行?有没有办法动态确定哪个“ifeq Zero”实现了跳跃?
任何见解将不胜感激。
jvm - 无用的商店导致崩溃
我有这个 jasmin 程序集,它相当于我正在编写的字节码重写器生成的 JVM 程序集的简化。它在运行时崩溃,但如果我删除sipush
和第一个商店,它就可以工作。
JVM 是否要求负载使用每个存储?
java - ASM:将 Textifier 输出组装到类文件中
有谁知道是否存在任何工具/库能够将 ASM Textifier 的输出组装到类文件中?
所以,我有以下代码:
现在我想组装asmOutput
回类文件。有没有人实现过这么方便的东西?
看起来唯一的解决方案是使用JasminifierClassAdapter.java
ASM 示例。但是 Jasmin 本身几乎已经过时和过时,所以这个解决方案是不完美的。