У меня есть упражнение, в котором я должен кодировать и декодировать строки на уровне битов, которые задаются в командной строке.
Предостережение для этого заключается в том, что я должен использовать преобразование перестановки, чтобы переупорядочить биты.
Вот пример:
Пользователь вводит символ для кодирования
H
Двоичный для H составляет
01001000
Однако это обычное отображение 8 битов через 0-7.
Моя программа должна будет переставлять биты в любой используемый мной картографический паттерн.
Например, если я использую Mapping 64752031
Биты для Чар 'H'
01001000
Поворот к
01000001
При кодировании символа 0-й бит превращается в 6-й бит, 2-й бит превращается в 4-й бит, 3-й бит превращается в 7-й бит и так далее. На чем основано это отображение.
Есть ли способ, которым я могу манипулировать и изменять порядок битов на основе данной карты перестановок?
Спасибо.