started mic1

This commit is contained in:
Tommaso Rodolfo Masera 2018-11-26 17:20:14 +01:00
parent 07cf7fc9b9
commit 9f9dbb4807
2 changed files with 37 additions and 0 deletions

BIN
Homework 8/ex3.ijvm Normal file

Binary file not shown.

37
Homework 8/ex3.jas Normal file
View file

@ -0,0 +1,37 @@
// product.jas
.constant
OBJREF 0x40 // needed for method invokation - see S.C.O. chapter 4
.end-constant
.main // start of program
LDC_W OBJREF // do not forget to push OBJREF on stack!
BIPUSH 0x15 // paramater n (i.e., n = 21)
BIPUSH 0x09 // paramater m (i.e., m = 9)
INVOKEVIRTUAL product
HALT // stops program execution
.end-main
.method product(n,m) // takes two arguments ("n" and "m")
.var
temp // change variable names as needed
.end-var
// just some code example:
BIPUSH 0x00
ISTORE temp
loop:
ILOAD m
IFEQ end
ILOAD n
ILOAD temp
IADD
ISTORE temp
BIPUSH 0xFF
ILOAD m
ISUB
ISTORE m
GOTO loop
end:
// this is obviously very useful
IRETURN
.end-method