Übung 1 am 14.04.2003 - Abgabe am 28.04.2003 - in RZ2/3
Entwickle zunächst eine allgemein verwendbare Toolbox (Datentransfer via geeignet zu definierendem Register) zum
Ausgeben einer 16-Bit ganzen Zahl mit Vorzeichen als Dezimalzahl (linksbündig) über die Standardausgabe
sowie anschließend ein EXE-Programm - unter Benutzung der gerade entwickelten Toolbox - zum Berechnen und Ausgeben der einerseits gerundeten relativen Häufigkeit und andererseits absoluten Häufigkeit der einzelnen Buchstaben (ohne Unterscheidung zwischen Klein- und Großbuchstaben) über die Standardausgabe in einer zuvor über die Standardeingabe via DOS-Funktion 10 (dezimal) bzw. 0A (hexadezimal) eingelesenen Zeichenkette.
Sollte Eure Lösung die eingelesene Zeichenkette 26-mal durchlaufen, so ist das genau 25-mal zu häufig :-)
Es entstehen zwei Quellcode-Dateien mit je einem Code-Segment. Das Stack-Segment (und Daten-Segment) wird (werden) in jener Quellcode-Datei definiert, die auch das Hauptprogramm beinhaltet.
Für das Aufrufen der Routine in der Toolbox kommen neben dem CALL-Befehl die beiden Assembler-Anweisungen EXTRN und PUBLIC zum Einsatz.
Das nachfolgende Dialogbeispiel möge die Aufgabenstellung verdeutlichen :
Moin Moin - Assembler ist eine schön bittige Programmiersprache
A 6% (3)
B 4% (2)
C 4% (2)
D 0% (0)
E 13% (7)
F 0% (0)
G 4% (2)
H 4% (2)
I 13% (7)
J 0% (0)
K 0% (0)
L 2% (1)
M 9% (5)
N 8% (4)
O 6% (3)
P 4% (2)
Q 0% (0)
R 9% (5)
S 9% (5)
T 6% (3)
U 0% (0)
V 0% (0)
W 0% (0)
X 0% (0)
Y 0% (0)
Z 0% (0)