LC3 Assembly Bitwise Right Shift

To, co muszę zrobić, to zaimplementować zarówno lewe przesunięcie bitowe, jak i przesunięcie bitowe w prawoMontaż LC-3. Zasadniczo każdy bit musi być przesunięty na jedną przestrzeń w kierunku przesunięcia, a zero wypełnia pustą przestrzeń utworzoną.

Przykłady:

Prawy Shift:

<code> 01001001
 00100100→
</code>

Przesunięcie w lewo:

<code> 01001001
←10010010
</code>

Z powodzeniem zaimplementowałem przesunięcie w lewo, biorąc łańcuch binarny i dodając go do siebie.

Jestem zakłopotany, jak wykonać prawą zmianę. Jakiekolwiek propozycje będą mile widziane. Mam operacje AND, NOT, ADD, operacje przenoszenia danych, siedem rejestrów do przechowywania wartości i cały zakres pamięci. Potrzebuję tylko kilku podstawowych pomysłów na to, jak można go wdrożyć.

Jeśli potrzebujesz referencji zestawu instrukcji LC-3, jestjeden tutaj.

questionAnswers(4)

yourAnswerToTheQuestion