Побитовые операции

  • Автор темы Автор темы Again
  • Дата начала Дата начала
A

Again

Задание 1. Составить ф-цию, которая кодирует символ (инвертирует порядок битов в байте). Ф-ция возвращает закодированный символ.

Задание 2. Даны позитивные числа x, n, q. Составить программу, которая инвертирует в х n бит, начиная с позиции q (остальные биты не меняются).
 
Вы уверены? Написано "инвертировать порядок битов". Я так понял сделать седьмой нулевым, шестой первым и т.д.
Я ответил так, как сам понимаю...
Скорее всего что Вы правы...
 
Если инвертировать порядок бит:
C++:
char reverse( char c )
{
int		i;
char	v = 0;
for ( i = 0; i < 8; i++ ) {
v |= ((c >> i) & 1) << (7 - i);
}
return v;
}

Если же все-таки инвертировать биты то:
C++:
	byte = ~byte;
или же (равнозначно предыдущему):
C++:
	byte ^= 0xff;
 
Мы в соцсетях:

Взломай свой первый сервер и прокачай скилл — Начни игру на HackerLab

🚀 Первый раз на Codeby?
Гайд для новичков: что делать в первые 15 минут, ключевые разделы, правила
Начать здесь →
🔴 Свежие CVE, 0-day и инциденты
То, о чём ChatGPT ещё не знает — обсуждаем в реальном времени
Threat Intel →
💼 Вакансии и заказы в ИБ
Pentest, SOC, DevSecOps, bug bounty — работа и проекты от проверенных компаний
Карьера в ИБ →

HackerLab