shamrel 0 3 марта, 2016 Опубликовано 3 марта, 2016 · Жалоба result = condition ? '0 : (pipa + popa); // unsigned too Действительно, при использовании оператора Condition, результат беззнаковый. Но это полностью соответствует правилу: Если хотя бы один из операндов имеет беззнаковый тип (unsigned), результат будет беззнаковым, независимо от остальных операндов и типа операции. Достаточно явно указать константе '0 ее знаковость, например, так 'sh0, и все станет на свои места. Я использую Verilog-2001, там так задать константу ( '0 ) синтаксис не позволяет, приходится явно указывать формат представления, а указав его, сразу становится понятно, знаковый он или нет. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
dima_spb 0 3 марта, 2016 Опубликовано 3 марта, 2016 · Жалоба Вот что интересного получается. Сам по себе Dmitriyspb ни в статьях ни в какой либо иной деятельности не замечен. Но всегда считает, что все остальные все делают "не так" и "без его одобрения"... И позволяет себе пренебрежительно высказываться о человеке, профессионального уровня которого он не знает... А это уже довольно плохо! Дима, представьте что я бы о Вас высказался примерно так: "Дима, ну что Вы понимаете в написании статей, и лезете со своими высказываниями, Вам что делать нечего?"... Нравится Вам такой подход? Поэтому Дима, умерьте свои высказывания. Совершенно не нужно обижать людей. Не нравятся Вам чьи-то статьи? Так это у приличных людей делается следующим образом. Пишется критика, дается опровержение. Ну, либо Вы можете просто обратиться к автору и помочь ему в тех местах, которые Вы могли бы сделать лучше... Вот, привыкайте к деловому общению... Прошу прощение. Дима будет терпимее. Даже пообщаться не дают :cranky: :crying: Больше не буду. Думал, может кто с чувством юмора отнесется Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
des00 25 4 марта, 2016 Опубликовано 4 марта, 2016 · Жалоба Действительно, при использовании оператора Condition, результат беззнаковый. Но это полностью соответствует правилу: Если хотя бы один из операндов имеет беззнаковый тип (unsigned), результат будет беззнаковым, независимо от остальных операндов и типа операции. Да, но приписку, с указанием того, что нужно рассматривать выражение в комплексе, даже если оно и оператором условия, я бы добавил. Это стандартная gotcha. Не все такие педанты в типах констант, как вы :) Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться
shamrel 0 4 марта, 2016 Опубликовано 4 марта, 2016 · Жалоба Да, но приписку, с указанием того, что нужно рассматривать выражение в комплексе, даже если оно и оператором условия, я бы добавил. Это стандартная gotcha. Не все такие педанты в типах констант, как вы :) Спасибо. Внес соответствующую поправку в статью. Цитата Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты Поделиться