Разработка, производство и продажа радиоэлектронной аппаратуры
|
Карта сайта
|
Пишите нам
|
В избранное
Требуется программист в Зеленограде
- обработка данных с датчиков; ColdFire; 40 тыс.
e-mail:
jobsmp@pochta.ru
Телесистемы
|
Электроника
|
Конференция «Микроконтроллеры и их применение»
temp ^= 0xFF;
Отправлено
SM
03 декабря 2007 г. 17:42
В ответ на:
А как бы инвертировать ПЕРЕМЕННУЮ?
отправлено Dikoy 03 декабря 2007 г. 17:40
Составить ответ
|
Вернуться на конференцию
Ответы
Ну или вместо 0xFF единицы в тех битах, которые нужно проинвертировать. Или temp = ~temp; что эквивалентно xor-у с ФФ (если речь о байте)
—
SM
(03.12.2007 17:45:19
80.92.255.53
,
пустое
)
Эквивалентно для unsigned. А то мало ли какой у него по умолчанию char.
—
Quasy
(03.12.2007 18:18:43
80.243.9.34
,
пустое
)
похрену сигнед. Это логические операции, и "^" и "~", и на знак им глубоко наплевать.
—
SM
(03.12.2007 18:20:27
80.92.255.53
,
пустое
)
Только ИАР последних версий начал варнингами сыпать, типа a=~a; операция с преобразованием в int производится.
—
rezident
(03.12.2007 19:16:27
195.222.149.11
,
пустое
)
Да хоть в long преобразуй, а все равно просто биты проинвертируются, и все.
—
SM
(03.12.2007 19:18:37
80.92.255.53
,
пустое
)
Ответ:
—
rezident
(03.12.2007 19:29:24
195.222.149.11
, 219 байт)
И что? Хочешь сказать, что char не является integer-типом?
—
SM
(03.12.2007 19:35:41
80.92.255.53
,
пустое
)
Не в свое дело лезу но есть рекомендации не делать побитовые операции со зн...{+}
—
VasilyS
(03.12.2007 19:59:3
80.92.96.25
, 369 байт,
ссылка
)
Вполне логичная рекомендация. Но речь о том, что побитовая инверсия просто обязана проинвертировать все биты integer-типа. Ну а уж как это на знак и на число повлияет, вопрос стотридцатый, мало ли какое представление знаковых чисел в системе.
—
SM
(03.12.2007 20:05:24
80.92.255.53
,
пустое
)
Отправка ответа
Имя*:
Пароль:
E-mail:
Тема*:
Сообщение:
Ссылка на URL:
URL изображения:
если вы незарегистрированный на форуме пользователь, то
для успешного добавления сообщения заполните поле, как указано ниже:
прибавьте тройку к двум:
Перейти к списку ответов
|
Конференция
|
Раздел "Электроника"
|
Главная страница
|
Карта сайта
Web
telesys.ru