问题标签 [bytecode]

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.

0 投票
6 回答
3512 浏览

vim - 字节码对比 口译

我记得一位教授曾经说过解释代码比编译代码慢大约 10 倍。解释和字节码之间的速度差异是什么?(假设字节码不是 JIT 编译的)

我问是因为有些人一直在考虑将 vim 脚本编译成字节码的想法,我只是想知道这会得到什么样的性能提升。

0 投票
2 回答
6162 浏览

erlang - Erlang 编译器如何处理模式匹配?它输出什么?

我刚刚问了一个关于 Erlang 编译器如何实现模式匹配的问题,我得到了一些很好的回应,其中之一是编译后的字节码(通过传递给c()指令的参数获得):

它只是简单的 Erlang 元组。我期待一些神秘的二进制东西,你猜不是。我在这里一时冲动地问这个问题(我可以查看编译器源代码,但通过额外的洞察力提出问题总是会更好),这个输出是如何在二进制级别翻译的?

比如说{test,is_tuple,{f,3},[{x,0}]}。我假设这是一条指令,称为“测试”......无论如何,所以这个输出本质上是字节码级语言的 AST,二进制编码只是 1-1 翻译?

这一切都太令人兴奋了,我不知道我可以这么容易地看到 Erlang 编译器把事情分解成什么。

0 投票
4 回答
56548 浏览

php - 如何在 PHP 中获取字符串的字节值?

假设我在 php 中有一个字符串,它会打印到这样的文本文件中:

nÖ§9q1Fª£

如何将它的字节码获取到我的文本文件而不是时髦的 ascii 字符?

0 投票
6 回答
9265 浏览

python - 编译的字节码文件(.pyc)可以在不同的目录中生成吗?

可能重复:
如何在单独的文件夹中编译 python 文件?

当 python 将模块编译为字节码时,它会从你的 .py 文件生成 .pyc 文件。

我的问题是,是否可以将这些 .pyc 文件写入与模块所在的目录不同的目录?

例如,我有一个很大的模块目录。我不想让它到处都是 .pyc 文件,我想将我的源代码保留在目录中,并有一个像“字节码”这样的子目录,所有 .pyc 都存储在其中。

这可能吗?

0 投票
6 回答
1181 浏览

apache-flex - Flash 应用程序依赖于 Flex。是否有任何 SWF 字节码大小优化器?

使用 Flex 的 Hello world 应用程序,使用 optimize=true 编译,大小为 178K。如何减小应用程序大小?

我们不喜欢使用 RSL,我们不喜欢避免使用 Flex。

生成的 SWF 的最大部分是未使用的字节码。是否有任何工具可以优化字节码——删除未使用的方法、类、给方法更短的名称等等?

我知道一些这样的 Java 字节码工具。SWF 有吗?

0 投票
4 回答
3967 浏览

java - 将 Java 字节码翻译成其他表示和编程语言

我正在寻找将 Java 字节码转换为其他编程语言的方法/工具/项目,或者,如果失败了,至少转换为结构化表示(如 XML)。理想的开源,自然。

我看过ASM,“字节码操作和分析框架”。它不支持转换为其他表示,但看起来像是这样一个项目的良好基础。可悲的是,他们的用户页面上列出的项目都没有接近。

0 投票
8 回答
743 浏览

java - 哪些设置会影响已编译的 java .class 文件的布局?你怎么知道两个编译的类是否相等?

我有一个使用内置 Eclipse“编译”任务编译的应用程序。然后我决定将构建过程移到 Ant 中javac,结果文件变小了。

后来我发现将调试级别调整为"vars,lines,source"可以嵌入与 Eclipse 相同的调试信息,并且在很多情况下,文件的大小完全相同,但内部布局不同。因此,我无法使用 md5sum 签名来确定它们是否完全相同。

除了调试信息之外,两个据称相等的文件获得不同的内部布局或大小的原因可能是什么?

以及如何比较已编译的 .class 文件?

0 投票
4 回答
5346 浏览

.net - 为什么反编译 .NET IL 代码这么容易?

与反编译本机 x86 二进制文件相比,为什么将 .NET IL 代码反编译为源代码如此容易?(Reflector 大部分时间都产生了相当不错的源代码,而反编译 C++ 编译器的输出几乎是不可能的。)

是因为 IL 包含很多元数据吗?还是因为 IL 是比 x86 指令更高的抽象?我做了一些研究,发现了以下两篇有用的文章,但它们都没有回答我的问题。

0 投票
5 回答
13584 浏览

java - 编译成java字节码(不使用Java)

我的编译器类正在创建一种我们打算编译为 Java 字节码的语言。我们已经取得了很大的进步,并且正在接近生成代码的时间。

我们在查找有关如何从我们的编译器创建 .class 文件的信息时遇到问题。你有什么资源可以给我们一些帮助吗?我们已经有大量关于指令集的文档,但需要有关如何直接填写类文件/编写十六进制的信息。

我们不需要有关反编译 .class 文件的信息或建议。

即使是从头开始写出 .class 文件的简单示例也将非常出色。

JVM 规范不是我们所追求的。我们真正需要的是一个例子或一个演练。

0 投票
2 回答
54625 浏览

scripting - 反编译 Lua 字节码的最佳工具?

我真的很难找到一个好的工作 Lua 字节码反编译器。我正在尝试反编译我在游戏中找到的一些脚本文件,但它们似乎已被编译,但似乎并非不可能解码。什么是反编译 Lua 二进制文件的最佳工具?