'aload' 或 'areturn' 这类 JVM 指令中的 'a' 指的是什么?我知道它们用于引用,但为什么它们被命名为 'aload'、'astore' 等而不是 'rload'、'rstore' 等呢?
'aload' 或 'areturn' 这类 JVM 指令中的 'a' 指的是什么?我知道它们用于引用,但为什么它们被命名为 'aload'、'astore' 等而不是 'rload'、'rstore' 等呢?
kvm/VmCommon/src/bytecodes.c
的片段:#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:这里}}
astore
可以存储类型为returnaddress的值(直到Java 6)的事实... - Holgeraaload
的意思是什么? - shaoyihe