asm
文章平均质量分 85
yueyemaitian
这个作者很懒,什么都没留下…
展开
-
ASM4.0源码走读之一
了解java class文件格式是读懂asm代码的前提,所以在此之前请找Java虚拟机规范里边class文件格式章节细读一下。 不过在详解读入过程之前,先简单看下jvm规范中对class文件格式的定义,其中一个u代表一个byte,u1、u2、u4分别代表1、2、4个字节:ClassFile { u4 magic; u2 minor_versi...原创 2013-03-08 23:18:27 · 346 阅读 · 0 评论 -
ASM4.0源码走读之二 指令的类型
在深入分析ClassReader.readCode()方法之前,我们需要大概了解下ASM把jvm的指令分的类型,这在readCode会用到。先看ClassReader的代码: static { int i; byte[] b = new byte[220]; String s = "AAAAAAAAAAAAAAAA...原创 2013-03-08 23:51:13 · 236 阅读 · 0 评论 -
ASM4.0源码走读之三 readCode方法分析方法代码
继第一篇,我们来看看readCode的代码: private void readCode(final MethodVisitor mv, final Context context, int u) { // reads the header byte[] b = this.b; char[] c = context...原创 2013-03-09 00:19:29 · 504 阅读 · 0 评论 -
从汇编和寄存器层面,简单描述下方法调用的时候都发生了什么
先看一个简单的汇编程序:assume cs:code,ss:stackstack segment dw 10 dup('a')stack endscode segmentstart: mov ax,stack mov ss,ax mov sp,20 mov ax,1 mov cx,4 call s mov ax,4c00h...原创 2013-09-08 13:18:07 · 86 阅读 · 0 评论