FlotToStr

Hier könnt ihr sowohl zur x86 Architektur als auch zu Win32ASM Fragen stellen.

Moderatoren: crack, Krüsty, Marwin

Beitragvon falangkinjau » Montag 18. Oktober 2004, 18:08

Hallo,
Um nun mal den Urschleim der Programmierung auf den Grund zu gehen, habe ich mich vor ca. 3 Wochen entschlossen asm zu erlernen. Bin also ein totaler Dau.

Warum schluckt die Funktion FloatToStr die x.0? Wenn ich eine 3.1 angebe ist es korrekt. Nun hätte ich aber gerne die x-te Stelle, auch wenn es eine 0 ist.
Gibt es vielleicht eine solche Funktion der ich sagen kann, wieviel Stellen ich benötige? Ich möchte mich aber noch nicht mit der FPU beschäftigen, da mir das noch zu heftig ist für den Anfang.

hier ist der Beispielcode:
.data

floatzahl dq 3.0
str1 db 32 dup(0)

.code

start:



invoke FloatToStr, floatzahl, ADDR str1

invoke MessageBox, 0, ADDR str1, 0, MB_OK


invoke ExitProcess, 0

; #########################################################################

end start


Gruß falangkinjau
falangkinjau
Newbie
 
Beiträge: 1
Registriert: Montag 18. Oktober 2004, 16:45

Beitragvon Marwin » Freitag 22. Oktober 2004, 17:25

Hallo falangkinjau,

ich kann dir in dieser Sache leider nicht weiterhelfen. Aber vielleicht könntest du nach der Umwandlung prüfen, ob ein Dezimalpunkt im String enthalten ist (wenn du weißt, dass du immer nur eine Nachkommastelle hast, dann reicht es, wenn du das vorletzte Zeichen des Strings überprüfst). Falls er das nicht ist, dann kannst du ".0" anfügen.

Grüße,
Marwin
Benutzeravatar
Marwin
Moderator
 
Beiträge: 307
Registriert: Donnerstag 8. Mai 2003, 21:19
Wohnort: Seelow, Deutschland


Zurück zu Assembler

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder

cron