#if STANDARDBYTECODES
SELECT(ILOAD) /* Load integer from local variable */
unsigned int index = ip[1];
pushStack(lp[index]);
DONE(2)
#endif
...
#if STANDARDBYTECODES
SELECT(ALOAD) /* Load address from local variable */
unsigned int index = ip[1];
pushStack(lp[index]);
DONE(2)
#endif
1 回答
我相信历史上'a'代表'地址',因为对象引用只是堆中的普通地址 .
对于这个想法的支持可以在Sun Microsystems的K virtual machine的源代码中找到 - 这是Java ME的第一个Java虚拟机之一 . 来源可以从CLDC 1.1 RI page下载 .
来自
kvm/VmCommon/src/bytecodes.c
的片段:here