Сдвиг регистров вправо в микрофоне-1 без выборок
Это первый раз, когда я публикую здесь вопрос, поэтому не стесняйтесь давать мне отзывы, если что-то не описано должным образом. На актуальный вопрос:
Мне было интересно, есть ли способ сдвинуть слово в одном из регистров В ПРАВО на 2 байта без выборок или арифметического сдвига (например, с выборкой: просто записать слово в адрес памяти 0x0 и извлечь 0x0 -> << 8 скопируйте его обратно в OPC или что-либо еще, ИЛИ в нужный регистр, извлеките адрес 0x1 и ИЛИ снова в регистр, не сдвигаясь влево на этот раз).
Таким образом, регистр, содержащий 0xcccc1111, должен стать 0x0000cccc
Вот небольшое описание микро-архитектуры микрофона-1.
Спасибо за помощь
Цель состоит в том, чтобы скопировать слово, которое начинается с памяти 0x2, в LV более эффективным способом: это должно работать, но оно использует и выборку, и запись, и, вероятно, это полная корзина:(
MAR=0; rd;
PC=1;
H=PC=PC+1;
PC=PC+H; fetch;
MDR= MDR <<8; rd;
LV=MDR<<8; rd;
PC=PC+1;
H=MBRU << 8; fetch;
LV = LV OR H;
H = MBRU;
LV = LV OR H;