Я работаю над назначением, при котором я буду вводить двоичные данные и сохранять обратную сторону по другому адресу. Я работаю с 4-битным словом, пока не смогу понять логику, а затем смогу расширить ее до 16-битного слова, когда все заработает.
Например: 1010100101001011 ==> 1101001010010101
Вот моя методика на данный момент:
слово: 1010 маска: 0001 результат: 0000
1) 1010 и 0001 - И это вместе
result is: 0000
(Я хочу иметь возможность хранить только наименее значимый бит как наиболее значимый в моем результате)
2) 1010 & 0010 - Увеличил мою маску и сложил ее вместе с моим словом
результат: 0010
теперь я бы взял бит на место 2 и сохранил его на месте 4 в моем регистре результатов.
Здесь у меня возникают проблемы с попыткой придумать логику, чтобы изолировать один бит, а затем сохранить его в другом месте.
Будем очень признательны за любые советы или рекомендации.
1011001011100011
= ›1100011101001101
, правильно ли я понял вопрос? - person Paul R   schedule 29.10.2012