访问ruby为示例程序生成的字节码

访问ruby为示例程序生成的字节码,ruby,bytecode,Ruby,Bytecode,有没有办法访问Ruby程序为以下示例代码创建的字节码 x=1 x.to_s puts x 如果您使用的是Rubinius,您可以像这样运行它并获得字节码: $ rbx compile simple.rb -o simple.bytecode 您可以看到关于Rubinius编译的全面解释和解释。如果您使用Rubinius,您可以这样运行它并获得字节码: $ rbx compile simple.rb -o simple.bytecode 您可以看到关于Rubinius编译的全面解释和解释。这

有没有办法访问Ruby程序为以下示例代码创建的字节码

x=1
x.to_s
puts x

如果您使用的是Rubinius,您可以像这样运行它并获得字节码:

$ rbx compile simple.rb -o simple.bytecode

您可以看到关于Rubinius编译的全面解释和解释。

如果您使用Rubinius,您可以这样运行它并获得字节码:

$ rbx compile simple.rb -o simple.bytecode

您可以看到关于Rubinius编译的全面解释和解释。

这将显示YARV说明

code = <<END
x=1
x.to_s
puts x
END
puts RubyVM::InstructionSequence.compile(code).disasm
code=END
=>“x=1\nx.到\u s\n输出x\n”
1.9.3-p547:017>放置RubyVM::指令sequence.compile(code).disasm
==disasm:==========
本地表(大小:2,argc:0[opts:0,rest:-1,post:0,block:-1]s1)
[2]x
0000跟踪1(1)
0002对象1
0004 setlocal x
0006跟踪1(2)
0008 getlocal x
0010发送:发送至_,0,无,0,
0016流行音乐
0017道1(3)
0019普赛尔夫
0020 getlocal x
0022发送:看跌期权,1,零,8,
0028请假

这将显示YARV说明

code = <<END
x=1
x.to_s
puts x
END
puts RubyVM::InstructionSequence.compile(code).disasm
code=END
=>“x=1\nx.到\u s\n输出x\n”
1.9.3-p547:017>放置RubyVM::指令sequence.compile(code).disasm
==disasm:==========
本地表(大小:2,argc:0[opts:0,rest:-1,post:0,block:-1]s1)
[2]x
0000跟踪1(1)
0002对象1
0004 setlocal x
0006跟踪1(2)
0008 getlocal x
0010发送:发送至_,0,无,0,
0016流行音乐
0017道1(3)
0019普赛尔夫
0020 getlocal x
0022发送:看跌期权,1,零,8,
0028请假

Im使用MRI,我想MRI将我的示例代码转换为字节或直接解释它。我不认为MRI正在编译为字节码。看到这个答案:我使用MRI,我想MRI将我的示例代码转换成字节或直接解释它。我不认为MRI正在编译成字节码。看看这个答案: