Debug information for calc




Intermediate Code
Byte Code Symbols String Value
100 reserved code: String value calc 0.000000
32 { 0.000000
27 var 0.000000
32 { 0.000000
28 var& 0.000000
100 reserved code: String value x 0.000000
34 = 0.000000
99 reserved code: Numeric value 0.000000
28 var& 0.000000
100 reserved code: String value y 0.000000
34 = 0.000000
99 reserved code: Numeric value 0.000000
28 var& 0.000000
100 reserved code: String value rt 0.000000
34 = 0.000000
99 reserved code: Numeric value 0.000000
28 var& 0.000000
100 reserved code: String value counter 0.000000
34 = 0.000000
99 reserved code: Numeric value 0.000000
29 var$ 0.000000
100 reserved code: String value str 0.000000
29 var$ 0.000000
100 reserved code: String value sign_str 0.000000
33 } 0.000000
2 begin 0.000000
32 { 0.000000
100 reserved code: String value start: 0.000000
3 call 0.000000
100 reserved code: String value printselection 0.000000
4 cmp 0.000000
100 reserved code: String value str 0.000000
100 reserved code: String value "1" 0.000000
11 je 0.000000
100 reserved code: String value addi 0.000000
4 cmp 0.000000
100 reserved code: String value str 0.000000
100 reserved code: String value "2" 0.000000
11 je 0.000000
100 reserved code: String value subi 0.000000
4 cmp 0.000000
100 reserved code: String value str 0.000000
100 reserved code: String value "3" 0.000000
11 je 0.000000
100 reserved code: String value muli 0.000000
4 cmp 0.000000
100 reserved code: String value str 0.000000
100 reserved code: String value "4" 0.000000
11 je 0.000000
100 reserved code: String value divi 0.000000
4 cmp 0.000000
100 reserved code: String value str 0.000000
100 reserved code: String value "5" 0.000000
11 je 0.000000
100 reserved code: String value quit 0.000000
17 jmp 0.000000
100 reserved code: String value start 0.000000
100 reserved code: String value addi: 0.000000
3 call 0.000000
100 reserved code: String value addition 0.000000
17 jmp 0.000000
100 reserved code: String value start 0.000000
100 reserved code: String value subi: 0.000000
3 call 0.000000
100 reserved code: String value subtraction 0.000000
17 jmp 0.000000
100 reserved code: String value start 0.000000
100 reserved code: String value muli: 0.000000
3 call 0.000000
100 reserved code: String value multiplication 0.000000
17 jmp 0.000000
100 reserved code: String value start 0.000000
100 reserved code: String value divi: 0.000000
3 call 0.000000
100 reserved code: String value division 0.000000
10 inc 0.000000
100 reserved code: String value counter 0.000000
17 jmp 0.000000
100 reserved code: String value start 0.000000
100 reserved code: String value quit: 0.000000
23 print 0.000000
35 << 0.000000
100 reserved code: String value "Preformed Exactly " 0.000000
35 << 0.000000
100 reserved code: String value counter 0.000000
35 << 0.000000
100 reserved code: String value " operations " 0.000000
35 << 0.000000
100 reserved code: String value " Goodbye! " 0.000000
8 exit 0.000000
33 } 0.000000
7 end 0.000000
32 { 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value getnum 0.000000
32 { 0.000000
23 print 0.000000
100 reserved code: String value "enter a number: " 0.000000
9 in 0.000000
100 reserved code: String value x 0.000000
23 print 0.000000
100 reserved code: String value "enter another number: " 0.000000
9 in 0.000000
100 reserved code: String value y 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value printselection 0.000000
32 { 0.000000
23 print 0.000000
35 << 0.000000
100 reserved code: String value "Simple calculator in MasC 1) for addition 2) for subtraction 3) for multiplication 4) for division 5) to exit " 0.000000
35 << 0.000000
100 reserved code: String value "Enter selection: " 0.000000
9 in 0.000000
100 reserved code: String value str 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value printresult 0.000000
32 { 0.000000
23 print 0.000000
35 << 0.000000
100 reserved code: String value x 0.000000
35 << 0.000000
100 reserved code: String value sign_str 0.000000
35 << 0.000000
100 reserved code: String value y 0.000000
35 << 0.000000
100 reserved code: String value "=" 0.000000
35 << 0.000000
100 reserved code: String value rt 0.000000
35 << 0.000000
100 reserved code: String value " " 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value addition 0.000000
32 { 0.000000
3 call 0.000000
100 reserved code: String value getnum 0.000000
19 mov 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value x 0.000000
0 add 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value y 0.000000
25 scat 0.000000
100 reserved code: String value sign_str 0.000000
35 << 0.000000
100 reserved code: String value "+" 0.000000
3 call 0.000000
100 reserved code: String value printresult 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value subtraction 0.000000
32 { 0.000000
3 call 0.000000
100 reserved code: String value getnum 0.000000
19 mov 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value x 0.000000
26 sub 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value y 0.000000
25 scat 0.000000
100 reserved code: String value sign_str 0.000000
35 << 0.000000
100 reserved code: String value "-" 0.000000
3 call 0.000000
100 reserved code: String value printresult 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value multiplication 0.000000
32 { 0.000000
3 call 0.000000
100 reserved code: String value getnum 0.000000
19 mov 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value x 0.000000
20 mul 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value y 0.000000
25 scat 0.000000
100 reserved code: String value sign_str 0.000000
35 << 0.000000
100 reserved code: String value "*" 0.000000
3 call 0.000000
100 reserved code: String value printresult 0.000000
33 } 0.000000
24 proc 0.000000
100 reserved code: String value division 0.000000
32 { 0.000000
3 call 0.000000
100 reserved code: String value getnum 0.000000
19 mov 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value x 0.000000
6 div 0.000000
100 reserved code: String value rt 0.000000
100 reserved code: String value y 0.000000
25 scat 0.000000
100 reserved code: String value sign_str 0.000000
35 << 0.000000
100 reserved code: String value "/" 0.000000
3 call 0.000000
100 reserved code: String value printresult 0.000000
33 } 0.000000
55 Terminating Symbol 0.000000

Symbol Table
Entery ID Variable Type Numeric Value String Value
mas String 0.000000
calc 0.000000
x Integer 0.000000
y Integer 0.000000
rt Integer 0.000000
counter Integer 0.000000
str String 0.000000
sign_str String 0.000000
start: Code Label 0.000000
printselection 0.000000
addi 0.000000
subi 0.000000
muli 0.000000
divi 0.000000
quit 0.000000
start 0.000000
addi: Code Label 0.000000
addition 0.000000
subi: Code Label 0.000000
subtraction 0.000000
muli: Code Label 0.000000
multiplication 0.000000
divi: Code Label 0.000000
division 0.000000
quit: Code Label 0.000000
getnum 0.000000
printresult 0.000000