Assembler. Почему с технической точки зрения нельзя выполнять команду mov, если источник и приемник являются памятью.

Компьютеры программирование программы assembler intel 80x86

Ответы:
боюсь вы чего то не договариваете, потому что mov постоянно используется в асме, если бы нельзя было ее использовать ее бы и не было
Если говорите про ассемблер, всегда указывайте архитектуру.
Потому что один из операндов придется буферизировать, так как невозможно заставить контроллер памяти выбрать одновременно 2 ячейки памяти.
Чисто технически такой проблемы нет, есть ведь инструкция push mod r/m. Просто нет такой машинной инструкции, возможно причина в нежелании усложнять вычисление длины инструкции. Для понимания сложности придётся изучать байт-код архитектуры 8086, а так же почитать, что нибудь для понимания как развивались процессоры этой архитектуры.
Такая команда, конечно, технически может быть реализована. Но такой инструкции нет, например, на процессорах семейства x86, потому как центральный процессор данной архитектуры при работе с памятью выставляет битовый адрес ячейки на шину адреса и управляющие биты режима работы с памятью: либо чтение, либо запись. Таким образом, оперативная память может либо считать данные из ячейки, либо записать данные в нее. И не существует режима работы процессор-память, при котором осуществлялся бы обмен данными между двумя ячейками оперативной памяти.
А в ассемблере Macro-11 (для PDP-11) такая инструкция была и даже с косвенной адресацией и нормально работала


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.