Что такое асимметричный ответ? Это когда о тебе негативно отзываются в комментарии, а ты об авторе этого комментария пишешь хорошо и по-доброму: в некрологе!
-
- Читайте Уоррена, "Алгоритмические трюки для программистов". Глава 10, Целое деление на константы. Там все написано. - vmp(21.09.2013 17:48)
- А так? sg = (sg>>1)+((sg<0)?(1):(0)); - Юра(21.09.2013 16:30,
)
- это нормально: просто происходит округление в меньшую сторону. -1/2 = -0.5, округляется до -1 - koyodza(21.09.2013 16:22)
- 2 koyodza: Скорее уж отбрасывание: ((-2047*8192)-1)>>13 получается -2048. ((-2047*8192)+1)>>13 получается -2047 - AU08(21.09.2013 16:44 - 16:56)
- "shifting an expression of signed type and negative value is implementation-defined", но как правило для знакового сдвига вправо используется арифм.сдвиг, сохраняющий знак: - zeleny(21.09.2013 14:03, ссылка)
- -1 - это 11111..111b. Арифметический сдвиг ессно оставит число без изменений. - POV(21.09.2013 13:22)
- Впечатление, как будто два нуля существуют: положительный (0) и отрицательный (11111..111b) - AU08(21.09.2013 13:30)
- Два нуля существуют в случае представления чисел со знаком в обратном коде. В этом случае замена деления Bill(205 знак., 21.09.2013 13:48)
- Вот тут - POV(21.09.2013 13:34 - 13:37, ссылка)
- Впечатление, как будто два нуля существуют: положительный (0) и отрицательный (11111..111b) - AU08(21.09.2013 13:30)