TGI Praktikum |
Auswertung und Test |
strtolower_1:
Benötigte Takte für Aufruf mit:
strtolower_2: Benötigte Takte für Aufruf mit:
|
![]() |
Effizienzvergleich von strtolower_1 und strtolower_2 als Diagramm:
|
Effizienz bei Berücksichtigung von Umlauten
Die Effizienz beider Programme würde natürlich verringert, da noch 3 Vergleiche nötig wären, um genau bestimmen zu können, ob der Buchstabenwert nun umgewandelt werden soll oder nicht. Diese Vergleiche müssten als Sprung-Befehle (jmp_equal) in die bestehenden Funktionalitäten eingebaut werden und würden so die Taktanzahl bei beiden strtolower-Implementierungen wesentlich erhöhen.
Test des Maschinenprogramms strtolower_1 und des Maschinenbefehls strtolower
Die Null, die am Ende jeder Zeichenkette stehen soll wird in der folgenden Tabelle aus Gründen der Übersichtlichkeit weggelassen. Im Hauptspeicher steht jedoch am Ende jeder Zeichenkette nachwievor eine Null.
strtolower_1 und strtolower_2
Zeichenkette im Hauptspeicher (vorher) |
Codierung der Zeichen (vorher) |
Codierung der Zeichen (nach Umwandlung mit strtolower_1 und 2) |
Zeichenkette im Hauptspeicher (nach Umwandlung) |
"h A L L O" |
"h" = 0x0068 "A" = 0x0041 "L" = 0x004C "L" = 0x004C "O" = 0x004F |
0x0068 0x0061 0x006C 0x006C 0x006F |
"h a l l o" (beide Programme arbeiten richtig) |
"2 a 4 B" |
"2" = 0x0032 "a" = 0x0061 "4" = 0x0034 "B" = 0x0042 |
0x0032 0x0061 0x0034 0x0062 |
"2 a 4 b" (beide Programme arbeiten richtig) |
"Ä ü" |
"Ä" = 0x00C4 "ü" = 0x00FC |
0x00C4 0x00FC |
"Ä ü" (beide Programme arbeiten richtig) |
"9 , 0 0 D M !" |
"9" = 0x0039 "," = 0x002C "0" = 0x0030 "0" = 0x0030 "D" = 0x0044 "M" = 0x004D "!" = 0x0021 |
0x0039 0x002C 0x0030 0x0030 0x0064 0x006D 0x0021 |
"9 , 0 0 d m !" (beide Programme arbeiten richtig) |
Eigenbewertung unseres Projektes
Bewertung der Zielarchitektur
zurück | 30.03.00 Katrin Stedele, Rainer Schmoll, Tanja Wojak |