Assembly Language for Beginners
3.29. WINDOWS 16-BIT push word ptr [bx+6] ; day push word ptr [bx+8] ; month mov ax, [bx+0Ah] ; year add ax, 1900 push ax mov ax ...
Chapter 4 Java 4.1 Java 4.1.1 Introduction. There are some well-known decompilers for Java (orJVMbytecode in general)^1. The rea ...
4.1. JAVA } } Let’s compile it: javac ret.java ...and decompile it using the standard Java utility: javap -c -verbose ret.class ...
4.1. JAVA Listing 4.3: Constant pool ... 2 = Integer 12345678 ... public static int main(java.lang.String[]); flags: ACC_PUBLIC, ...
4.1. JAVA ...andchar! public class ret { public static char main(String[] args) { return 'A'; } } public static char main(java.l ...
4.1. JAVA 0: ldc2_w #2 // long 1234567890123456789l 3: lreturn The 64-bit number is also stored in a constant pool,ldc2_wloads i ...
4.1. JAVA public static void main(java.lang.String[]); flags: ACC_PUBLIC, ACC_STATIC Code: stack=0, locals=1, args_size=1 0: ret ...
4.1. JAVA public static double half_double(double); flags: ACC_PUBLIC, ACC_STATIC Code: stack=4, locals=2, args_size=1 0: dload_ ...
4.1. JAVA public class calc { public static int mult_add(int a, int b, int c) { return a*b+c; } } public static int mult_add(int ...
4.1. JAVA 4.1.5 Simple function calling. Math.random()returnsapseudorandomnumberinrangeof[0.0...1.0), butlet’ssaythatforsomereas ...
4.1. JAVA #2 = Fieldref #16.#17 // java/lang/System.out:Ljava/io/PrintStream; #3 = String #18 // Hello, World #4 = Methodref #19 ...
4.1. JAVA 3: invokevirtual #3 // Method java/awt/Toolkit.beep:()V 6: return Firstinvokestaticat offset 0 calls java.awt.Toolkit. ...
4.1. JAVA public int my_rand(); flags: ACC_PUBLIC Code: stack=2, locals=1, args_size=1 0: getstatic #2 // Field rand_state:I 3: ...
4.1. JAVA public static int min(int, int); flags: ACC_PUBLIC, ACC_STATIC Code: stack=2, locals=2, args_size=2 0: iload_0 1: iloa ...
4.1. JAVA 23: ldc #5 // String ==100 25: invokevirtual #4 // Method java/io/PrintStream.print:(Ljava/lang/String;)V 28: iload_0 ...
4.1. JAVA 6: istore_2 7: iload_1 8: iload_2 9: invokestatic #2 // Method max:(II)I 12: istore_3 13: iload_1 14: iload_2 15: invo ...
4.1. JAVA public static long lclear (long a, int b) { return a & (~(1<<b)); } public static long lset(long, int); flag ...
4.1. JAVA Why not the zeroth slot? Because themain()function has one argument (array ofString) and a pointer to it (orreference) ...
4.1. JAVA 1 —limit, always contains 20 2 —f 3 —g 4 —i We can see that the Java compiler allocates variables inLVAslots in the ...
4.1. JAVA 80: getstatic #2 // Field java/lang/System.out:Ljava/io/PrintStream; 83: ldc #8 // String four\n 85: invokevirtual #4 ...
«
30
31
32
33
34
35
36
37
38
39
»
Free download pdf