| Микроконтроллеры, АЦП, память и т.д Темы касающиеся микроконтроллеров разных производителей, памяти, АЦП/ЦАП, периферийных модулей... |
C и как определить четное число
08.08.2012, 14:46
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от nonamedov
|
|
Ну, если уж на это пошло, то слева не lvalue переменная.
|
Я говорил об операции побитного И, а Yurkin2007 символами '=' обозначил равенство, а не присвоение.
__________________
There's always more than one way to skin a cat.
|
|
|
|
08.08.2012, 14:51
|
|
|
Заблокирован
Регистрация: 27.03.2007
Сообщений: 1,327
Сказал спасибо: 12
Сказали Спасибо 576 раз(а) в 460 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от tempora
|
|
Так это же не операция сравнения!
|
Имелось ввиду, что допускается побитовое умножение int и bool, и результат 2 & true равен 0. А при логическом умножении 2 && true результат равен true, то есть ненулевой ... 
ЗЫ. Проверил вот это
|
Код:
|
int i=2;
if(i › true){do something;} |
работает  !
После C# это кажется полным падением нравов ...
Последний раз редактировалось Yurkin2007; 08.08.2012 в 15:04.
|
|
|
|
08.08.2012, 15:05
|
|
|
Прописка
Регистрация: 31.12.2008
Сообщений: 104
Сказал спасибо: 5
Сказали Спасибо 48 раз(а) в 23 сообщении(ях)
|
Re: C и как определить четное число
ДоСИкались. В асме проверишь младший бит и все ясно, чет - нечет. Удачи в сишных извращениях!
|
|
|
|
08.08.2012, 15:07
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 10.01.2007
Сообщений: 3,411
Сказал спасибо: 65
Сказали Спасибо 664 раз(а) в 443 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от Yurkin2007
|
|
Имелось ввиду, что
|
Именно так я и понял написанное. А поскольку в сравнении участвовали совершенно разные операции (& и &&), я это отметил, так как именно в силу этой разницы выражения дают разный результат.
++
Сообщение от Yurkin2007
|
работает !
|
И в этом кайф!
__________________
There's always more than one way to skin a cat.
Последний раз редактировалось tempora; 08.08.2012 в 15:25.
|
|
|
|
08.08.2012, 16:41
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от koms45
|
|
ДоСИкались. В асме проверишь младший бит и все ясно, чет - нечет. Удачи в сишных извращениях!
|
Как вы думаете во что компилятор развернет ???
Надо знать и Си и ассемблер ,а не гнуть пальцы...
__________________
Осторожно , злой кот
Последний раз редактировалось dosikus; 08.08.2012 в 16:43.
|
|
|
|
10.08.2012, 21:42
|
|
|
Гражданин KAZUS.RUN
Регистрация: 01.09.2007
Сообщений: 897
Сказал спасибо: 278
Сказали Спасибо 57 раз(а) в 54 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от koms45
|
|
ДоСИкались. В асме проверишь младший бит и все ясно, чет - нечет. Удачи в сишных извращениях!
|
На асме нет времени писать, на СИ в несколько раз быстрее получается..... А так как проект без сильных ужимок в деньгах, то поставлен чип мега8535... И скорости для поставленной задачи более чем с ушами. А вот времени на реализацию проекта не хватает..(((
А задача просто была такая приходит байт с ком порта сгенерированый на компе(случайно).... А микроконтроллер либо по такому либо по другому сценарию идет..... Не важно чет или нечет но нужно по разному....
Спасибо откликнувшимся....
|
|
|
|
10.08.2012, 21:44
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от bass1981
|
|
На асме нет времени писать, на СИ в несколько раз быстрее получается.
|
Если компилятор вменяемый он вашу инструкцию и так развернет в проверку нулевого бита . Не слушайте рьяных ассемблерщиков ...
__________________
Осторожно , злой кот
|
|
|
|
11.08.2012, 08:48
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 13.10.2007
Адрес: Беларусь
Сообщений: 8,026
Сказал спасибо: 60
Сказали Спасибо 3,941 раз(а) в 2,302 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от bass1981
|
|
На асме нет времени писать, на СИ в несколько раз быстрее получается...
|
Мы все уже поняли, НАсколько быстрее получается...
На АСМе о такой ерунде даже не задумываешься. Что может быть проще и понятней?
|
|
|
|
12.08.2012, 00:15
|
|
|
Почётный гражданин KAZUS.RUN
Регистрация: 25.05.2010
Адрес: г. Королёв
Сообщений: 8,487
Сказал спасибо: 30
Сказали Спасибо 3,070 раз(а) в 2,011 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от dosikus
|
|
Если компилятор вменяемый он вашу инструкцию и так развернет в проверку нулевого бита . Не слушайте рьяных ассемблерщиков ...
|
В лучшем случае.
...только сначала считает переменную из RAM в регистр...
Сообщение от bass1981
|
|
На асме нет времени писать, на СИ в несколько раз быстрее получается.....
|
Можно и в Сёвый код директиву asm ("ххх"); вставить.
|
|
|
|
12.08.2012, 00:37
|
|
|
Гуру портала
Регистрация: 20.11.2004
Сообщений: 9,979
Сказал спасибо: 928
Сказали Спасибо 2,261 раз(а) в 1,557 сообщении(ях)
|
Re: C и как определить четное число
Сообщение от omercury
|
|
только сначала считает переменную из RAM в регистр...
|
А ну да , все забываю что у AVR не все как у людей.
Как адаптация ?
__________________
Осторожно , злой кот
|
|
|
|
Ваши права в разделе
|
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения
HTML код Выкл.
|
|
|
Часовой пояс GMT +4, время: 10:12.
|
|