Беда....
Код: Выделить всё
fld dword [ONE] ; Заталкиваем еденицу
fld dword [qwe] ; Заталкиваем число
xor ecx,ecx
.again1:
FPREM ; Делаем st0=st0 mod st1
fcom dword [NULL] ; Сравниваем st0==0?
fstsw ax ; Переносим
sahf ; флаги
je .end1 ; И здесь должно перейти, если st0==0, но оно не переходит!
fmul dword [des]
fist dword [tmp]
mov eax, [tmp]
add eax, 48
mov [esp], al
dec esp
inc ecx
jmp .again1
.end1Хотя я тут подумал и решил сделать вывод проще. Я возьму целую часть и выведу её, потом получу остаток от деления на 1, умножу, скажем, на 1000000.0, получу целую часть и выведу.