hallo....weiss jmd wie ich hier vorgehen soll,,,,,,über eure
Lösungsvorschläge würde ich mich freuen,,,,,,,,und bedanke ich mich im
vorraus,,,,,
Erstellen Sie ein Assemblerprogramm, welches wie immer als Funktion aus
einem C-Programm
aufrufbar sein soll – dieses Mal soll allerdings aus dem C-Teil an den
Assembler-Teil ein Parameter
(mit der der C-Aufrufkonvention) ¨ubergeben werden. (Vertiefen Sie
hierzu ihr Wissen
anhand von Kapitel 4 des Assembler-Buches von Paul Carter). Als
Parameter soll eine 32-
Bit-Ganzzahl ¨ubergeben werden, deren 26 niedrigstwertige Bits ein
Datenwort enthalten. Die
h¨ochstwertigen 6 Bits sind nicht von Bedeutung, es kann angenommen
werden, dass diese
null sind.
Ihr Programm soll f ¨ ur die ¨ubergebenen Datenbits ein Codewort des
Hamming-Codes mit 26
Datenbits berechnen und das so berechnete Codewort (mit eingeschobenen
Parit ¨ atsbits) auf
der Kommandozeile ausgeben. F¨ ur die Berechnung des Codes soll die
Nummerierung der Bits
vom niedrigst- zum h¨ochstwertigsten Bit erfolgen.
(a) Wie viele Parit ¨ atsbits m¨ussen Sie hinzuf ¨ugen? An welchen
Stellen werden diese
eingeschoben? Aus welchen Datenbits werden sie berechnet?
(b)Skizzieren Sie die Struktur des Stacks, nachdem der Prolog ihrer aus
C aufgerufenen
Assembler-Funktion durchlaufen wurde. Geben Sie die Inhalte der
Speicherbereiche
12 Byte um den dann aktuellen EBP an. Verwenden Sie eine Darstellung,
aus
der f ¨ ur jedes Byte genau hervorgeht, an welcher Speicheradresse es
liegt (Endianness
beachten!).
(c) Geben Sie Ihren kommentierten Quellcode ab.