-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathreadtest.j
executable file
·160 lines (142 loc) · 4.08 KB
/
readtest.j
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
.class public readtest
.super java/lang/Object
.field private static _runTimer LRunTimer;
.field private static _standardIn LPascalTextIn;
.method public <init>()V
aload_0
invokenonvirtual java/lang/Object/<init>()V
return
.limit locals 1
.limit stack 1
.end method
.method private static doread()V
.var 3 is b Z
.var 2 is c C
.var 0 is i I
.var 1 is x F
.line 12
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "Type an integer: "
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 13
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.readInteger()I
istore_0
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.nextLine()V
.line 14
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "You typed: %d\n"
iconst_1
anewarray java/lang/Object
dup
iconst_0
iload_0
invokestatic java/lang/Integer.valueOf(I)Ljava/lang/Integer;
aastore
invokestatic java/lang/String/format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 15
getstatic java/lang/System/out Ljava/io/PrintStream;
invokevirtual java/io/PrintStream.println()V
.line 17
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "Type a real: "
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 18
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.readReal()F
fstore_1
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.nextLine()V
.line 19
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "You typed: %f\n"
iconst_1
anewarray java/lang/Object
dup
iconst_0
fload_1
invokestatic java/lang/Float.valueOf(F)Ljava/lang/Float;
aastore
invokestatic java/lang/String/format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 20
getstatic java/lang/System/out Ljava/io/PrintStream;
invokevirtual java/io/PrintStream.println()V
.line 22
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "Type a character: "
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 23
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.readChar()C
istore_2
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.nextLine()V
.line 24
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "You typed: %c\n"
iconst_1
anewarray java/lang/Object
dup
iconst_0
iload_2
invokestatic java/lang/Character.valueOf(C)Ljava/lang/Character;
aastore
invokestatic java/lang/String/format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 25
getstatic java/lang/System/out Ljava/io/PrintStream;
invokevirtual java/io/PrintStream.println()V
.line 27
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "Type a boolean: "
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 28
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.readBoolean()Z
istore_3
getstatic readtest/_standardIn LPascalTextIn;
invokevirtual PascalTextIn.nextLine()V
.line 29
getstatic java/lang/System/out Ljava/io/PrintStream;
ldc "You typed: %s\n"
iconst_1
anewarray java/lang/Object
dup
iconst_0
iload_3
ifne L001
ldc "false"
goto L002
L001:
ldc "true"
L002:
aastore
invokestatic java/lang/String/format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
invokevirtual java/io/PrintStream.print(Ljava/lang/String;)V
.line 30
getstatic java/lang/System/out Ljava/io/PrintStream;
invokevirtual java/io/PrintStream.println()V
return
.limit locals 4
.limit stack 8
.end method
.method public static main([Ljava/lang/String;)V
new RunTimer
dup
invokenonvirtual RunTimer/<init>()V
putstatic readtest/_runTimer LRunTimer;
new PascalTextIn
dup
invokenonvirtual PascalTextIn/<init>()V
putstatic readtest/_standardIn LPascalTextIn;
.line 34
invokestatic readtest/doread()V
getstatic readtest/_runTimer LRunTimer;
invokevirtual RunTimer.printElapsedTime()V
return
.limit locals 1
.limit stack 3
.end method