according to the info i have "fbstp converts the value in st0 to an 18?digit packed BCD integer, stores the

result in the destination operand, and pops the register stack."

if i load pi into st(0) and multiply by 10d i get after fbstp 31h

multiply by 100d and fbstp i get 99h

multiply by 1000d and fbstp i get 310h

multiply by 10000d and fbstp i get 974h, and it just gets worse.

could someone explain this to me?

i was thinking of using fbstp as a way of converting a float to string.

result in the destination operand, and pops the register stack."

if i load pi into st(0) and multiply by 10d i get after fbstp 31h

multiply by 100d and fbstp i get 99h

multiply by 1000d and fbstp i get 310h

multiply by 10000d and fbstp i get 974h, and it just gets worse.

could someone explain this to me?

i was thinking of using fbstp as a way of converting a float to string.

It would be much easier if you would post some of your code so we may be able to determine where errors could occur. One of the standard ways to convert floating point values to ASCII is to use the fbstp instruction.

Raymond

Raymond