|
|
ru.algorithms- RU.ALGORITHMS ---------------------------------------------------------------- From : Sergey Kabikov 2:5020/175.2 31 Aug 2001 17:51:06 To : Serhiy Savychenko Subject : Re: Округление по правилам -------------------------------------------------------------------------------- Fri Aug 31 2001 15:04, Serhiy Savychenko wrote to Sergey Kabikov: >> все решается одной командой сопроцессора FISTP dword ptr [куда надо] >> с корректно выставленным контрольным регистром сопроцессора. SS> Дело в том, что речь идет в основном о числах с плавающей точкой, поэтому SS> FISTP dword ptr не совсем то. Может можно того же добиться с помощью SS> FSTP. Hе совсем понял. Аргумент операции округления - число с плавающей точкой, а результат (даже не глядя в реализацию) должен быть целым. Если тебе для дальнейших операции нужна Float - ну и загрузи полученное целое снова в регистр сопроцессора 8-) SS> Hо я что то не нашел как влияет на эти операции контрольный регистр. SS> Может кто нибудь знает где можно взять нормальный хелп по асемблеру SS> в электронном виде. А то лучшее что я нашел хелп под дос от масма. Легко. Только не по _ассемблеру_, а по _процессору_, и это совсем не одно и то же. "IA-32 Intel Architecture Software Developer's Manual" в трех томах. Must Have для серьезного программера (наизусть знать необязательно 8-). 16+ МБайт сплошного удовольствия прямо с сайта Интела. >> Дельфи это инкапсулировано в функции Round() и притом именно по этим SS> может кто нибудь SS> кинет асемблерный код, который делает Борланд при исполнении Round()? procedure _ROUND; asm { -> FST(0) Extended argument } { <- EAX Result } PUSH EAX FISTP dword ptr [ESP] FWAIT POP EAX end; Разумеется, "Rounding Control Field of FPU Control Word should be set to zero". для справки - это биты 10 и 11 CW. С уважением Сергей ...Планетоид на эпилептической орбите (с) переводчик StarTrek --- ifmail v.2.15 * Origin: FidoNet Online - http://www.fido-online.com (2:5020/175.2) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.algorithms/3300e3e592bb.html, оценка из 5, голосов 10
|