如何打印Ruby指令的内存地址?

时间:2019-07-03 08:31:43

标签: ruby memory bytecode memory-address

我正在尝试打印Ruby解释器生成的字节码指令以及与每个指令关联的内存地址。

我知道我可以使用RubyVM::InstructionSequence来获取程序的反汇编指令序列,但是它不会打印与之关联的内存地址。例如,我现在得到的就是

0000 trace      8                                               (   1)
0002 trac       1                                               (   2)
0004 putself
0005 putstring  "hello, world"
0007 send       :puts, 1, nil, 8, <ic:0>
0013 trace      16                                              (   3)
0015 leave                                                      (   2)

但是,我要查找的是其他信息,例如

0x__MEM_ADDRESS__ putstring  "hello, world"

或者类似的东西。同样,我的主要要点是获取每条指令的内存地址。

任何人都可以将我定向到可以获取该信息的地方吗?还是不可能?如果是这样,我也很高兴知道这一点,而不是对没有答案的问题投入过多的精力。

感谢您的帮助。

0 个答案:

没有答案