2011-01-15 16 views
0

Ich habe durch die C++ und Asm Probleme von The Binary Auditor gearbeitet. Ich habe durch die C++ - Sachen kein Problem, aber die Versammlung gibt mir ein bisschen Ärger. Ich verwende masm32 unter Windows 7.Lesen schwebt aus einer Datei in ASM

Das erste Assembly-Problem fordert Sie im Wesentlichen auf, den Durchschnitt einer Reihe von Float-Werten, die in einer Textdatei gespeichert sind, einen Wert pro Zeile zu berechnen. Bis jetzt konnte ich die Daten aus der Datei einlesen und in einem Array als eine Reihe von Zeichen speichern.

Also meine Frage ist, um die Float-Werte aus dem Array zu extrahieren, muss ich jedes Byte physikalisch betrachten, Newline-Zeichen und '.'s erkennen und dann die Floats konstruieren? Gibt es einen leichteren Weg ?!

Danke

Antwort

1

Tun Sie es wie Sie gesagt haben. Ich denke, es kann in einem einzigen Durchlauf getan werden: Lesen Sie Byte um Byte aus Ihrer Datei und konstruieren Sie den Float sofort Ziffer für Ziffer.

Wenn Sie CRT-Bibliothek verwenden dürfen, können Sie auch fscanf() oder etwas aufrufen, um Zeichenfolge in Double zu konvertieren, aber ich denke, das Ziel hier ist, es in Assembler zu tun, also tun Sie es wie gesagt.