home *** CD-ROM | disk | FTP | other *** search
/ Turbo Toolbox / Turbo_Toolbox.iso / 1989 / 06 / heimwerk / benchmk.inc next >
Encoding:
Text File  |  1989-03-29  |  2.4 KB  |  95 lines

  1. '* ------------------------------------------------------- *
  2. '*                     BENCHMK.INC                         *
  3. '* ------------------------------------------------------- *
  4. SUB Benchmark.1(faktor1!)
  5. LOCAL i, elapsedtime!
  6.   PRINT "Benchmark 1:       "
  7.   PRINT "  Integerarithmetik: ";
  8.   i = 0  :  MTIMER
  9.   DO
  10.     i = i + 1
  11.   LOOP UNTIL i = 30000
  12.   DO
  13.     i = i - 1
  14.   LOOP UNTIL i = 0
  15.   i = 2
  16.   DO WHILE i <= 15000
  17.     i = i * 2
  18.   LOOP
  19.   DO
  20.     i = i \ 2
  21.   LOOP UNTIL i <= 10
  22.   elapsedtime! = MTIMER/1E6
  23.   PRINT USING"     ##.##"; ElapsedTime!;
  24.   PRINT " sec. (IBM-XT ca.  5.92 sec.)";
  25.   IF elapsedtime! > 0 THEN
  26.     faktor1! = 592 / elapsedtime!
  27.     PRINT USING "  Faktor: ####.# %"; faktor1!
  28.   END IF
  29. END SUB
  30.  
  31. SUB Benchmark.2(faktor2!)
  32. LOCAL i#, elapsedtime!
  33.   i# = 2
  34.   PRINT "Benchmark 2: "
  35.   PRINT "  Realarithmetik:";
  36.   MTIMER
  37.   DO
  38.     i# = i# * i#
  39.   LOOP UNTIL i# >= 1E31
  40.   DO
  41.     i# = i# / 2
  42.   LOOP UNTIL i# <= 0
  43.   i# = 2
  44.   DO
  45.     i# = i# ^ 1.5
  46.   LOOP UNTIL i# >= 1E31
  47.   elapsedtime! = MTIMER/1E6
  48.   PRINT USING"        ##.##"; elapsedTime!;
  49.   PRINT " sec. (IBM-XT ca.  5.11 sec.)";
  50.   IF elapsedtime! > 0 THEN
  51.     faktor2! = 511 / elapsedtime!
  52.     PRINT USING "  Faktor: ####.# %"; faktor2!
  53.   END IF
  54. END SUB
  55.  
  56. SUB Benchmark.3(faktor3!)
  57. LOCAL a$, elapsedtime!
  58.   PRINT "Benchmark 3:"
  59.   PRINT "  Stringmanipulationen:";
  60.   MTIMER  :  a$ = ""
  61.   DO
  62.     a$ = a$ + "i"
  63.   LOOP UNTIL LEN(a$) >= 2000
  64.   DO
  65.     a$ = LEFT$(a$, LEN(a$) - 1)
  66.   LOOP UNTIL LEN(a$) <= 10
  67.   elapsedtime! = MTIMER/1E6
  68.   PRINT USING "  ##.##"; ElapsedTime!;
  69.   PRINT " sec. (IBM-XT ca. 19.29 sec.)";
  70.   IF elapsedtime! > 0 THEN
  71.     faktor3! = 1929 / elapsedtime!
  72.     PRINT USING "  Faktor: ####.# %"; faktor3!
  73.   END IF
  74. END SUB
  75.  
  76. SUB Benchmark
  77. LOCAL gesamtfaktor!
  78.   CALL SubMen("Speed-Test")
  79.   CALL QPrint(7, 1, " Bitte warten !", 143)
  80.   DELAY 1               ' Eventuelles Tastendrücken abwarten
  81.   LOCATE 7,1  :  COLOR 7,0
  82.   CALL Benchmark.1(faktor1!)  :  PRINT
  83.   CALL Benchmark.2(faktor2!)  :  PRINT
  84.   CALL Benchmark.3(faktor3!)  :  PRINT
  85.   gesamtfaktor! = (faktor1! + faktor2! + faktor3!) / 3
  86.   PRINT  :  PRINT  :  COLOR 15,0
  87.   PRINT "Berechnung des Durchschnittwertes:"
  88.   PRINT "  Gesamtfaktor (Vergleich mit IBM-XT";
  89.   PRINT " INTEL 8088, 4,77 MHz): ";
  90.   PRINT USING "####.# %"; Gesamtfaktor!
  91.   COLOR 7,0
  92. END SUB
  93. '* ------------------------------------------------------- *
  94. '*               Ende von BENCHMK.INC                      *
  95.