tock-mirror/testcases/time-mul.occ

50 lines
946 B
Plaintext

#INCLUDE "course.occ"
PROC main(CHAN OF BYTE out)
TIMER t:
INT t0, t1, x, y:
SEQ
t ? t0
SEQ i = 0 FOR 1000000
SEQ
x := i * 5
y := y PLUS x
t ? t1
t1 := t1 - t0
out.string("Time for low numbers MUL: ", 0, out)
out.int(t1, 0, out)
t ? t0
SEQ i = 0 FOR 1000000
SEQ
x := i TIMES 5
y := y PLUS x
t ? t1
t1 := t1 - t0
out.string("Time for low numbers TIMES: ", 0, out)
out.int(t1, 0, out)
t ? t0
SEQ i = 100000000 FOR 1000000
SEQ
x := i * 5
y := y PLUS x
t ? t1
t1 := t1 - t0
out.string("Time for high numbers MUL: ", 0, out)
out.int(t1, 0, out)
t ? t0
SEQ i = 100000000 FOR 1000000
SEQ
x := i TIMES 5
y := y PLUS x
t ? t1
t1 := t1 - t0
out.string("Time for high numbers TIMES: ", 0, out)
out.int(t1, 0, out)
out ! '*n'
out.int(y, 0, out)
: