Да на оба вопроса. Есть платформы, которые поддерживают только сброс в ноль, и есть много платформ, где сброс в ноль установлен по умолчанию.
Вы также должны знать, что многие встраиваемые платформы и платформы dsp используют режим «Denormals Are Zero», что является еще одним недостатком в семантике с плавающей точкой.
Редактировать дальнейшее объяснение ЗСТ против DAZ:
В ЗСТ, когда операция выдаст денормальный результат по обычной арифметике, вместо нее возвращается ноль. Обратите внимание, что некоторые реализации всегда сбрасываются в положительный ноль, тогда как другие могут сбрасываться в положительный или отрицательный ноль. Вероятно, лучше не зависеть ни от одного из них.
В DAZ, когда вход в операцию является денормальным, на его место подставляется ноль. Опять же, нет общей гарантии того, какой ноль будет заменен.
Некоторые реализации, поддерживающие эти режимы, позволяют устанавливать их независимо (а некоторые поддерживают только один из двух), поэтому может потребоваться, чтобы вы могли смоделировать оба режима независимо, а также вместе.
Обратите внимание, что некоторые реализации объединяют эти два режима в "Flush to Zero". Например, в режиме ARM VFP "сброс до нуля" используются как FTZ, так и DAZ.