Меня смущает, почему мы заботимся о разных представлениях для положительного и отрицательного нуля.
Я смутно припоминаю чтение утверждений, что наличие отрицательного нулевого представления чрезвычайно важно в программировании, которое включает в себя комплексные числа. У меня никогда не было возможности написать код, включающий комплексные числа, поэтому я немного озадачен тем, почему это так.
Статья Википедии о концепции не особенно полезна; это только делает смутные заявления о нулевом знаке, делающем некоторые математические операции проще с плавающей запятой, если я правильно понимаю. В этом ответе перечислено несколько функций, которые ведут себя по-разному, и, возможно, что-то может быть выведено из примеров, если вы знакомы с тем, как их можно использовать. (Хотя конкретный пример сложных квадратных корней выглядит неверно, поскольку эти два числа математически эквивалентны, если только у меня нет недопонимания.) Но я не смог найти четкого утверждения о том типе неприятностей, с которыми вы бы столкнулись, если бы его там не было. Чем больше математических ресурсов я смог найти, так это тем, что не существует различий между ними с математической точки зрения, и статья в Википедии, похоже, предполагает, что это редко можно увидеть вне вычислений, помимо описания ограничений.
Так почему отрицательный ноль ценен в вычислительной технике? Я уверен, что просто что-то упустил.
sqrt(-1+0i) = i
и sqrt(-1-0i) = -i
, хотя, я думаю, хотя и с правильным синтаксисом для некоторого языка программирования. Я буду редактировать, чтобы быть более понятным.