jmp bx jmp 500 GoldFinch, теперь, надеюсь, знаешь SII, применительно к команде mov обычно все-таки говорят "непосредственный операнд", а не "непосредственная адресация", но это не принципиально. Я не согласен с другим, а именно с тем, что ты противопоставляешь слова прямая и непосредственная, хотя они вполне могут дополнять друг друга. Прямая адресация - это противоположность косвенной, а непосредственная адресация - противоположность регистровой: jmp bx - (прямая) регистровая адресация jmp [bx] - косвенная регистровая адресация jmp 500 - (прямая) непосредственная адресация jmp [500] - косвенная непосредственная адресация
Phantom_84 Операнд -- это операнд, та величина, над которой выполняется операция. А адресация -- это адресация, способ определения местонахождения операнда. И эти слова не являются синонимами. Где это я что-то противопоставляю? Непосредственная -- не противоположность регистровой. Я привожу пример, а не противопоставляю.
Терминология хитрая штука... я уже свыкся с мыслью что бит!=двоичный разряд, но многие термины звучат для меня непривычно %)
вот хрень а прямая регистровая тогда, чем отличается от косвенной регистровой? можно примеричики вида mov x,y
Уважаемые господа. Милые, умный друзья (крыша съехала моя, от того я так пишу) Вот совсем дело встало. Схемотехника покоя не дает. Спросить препода возможности нет пока. Может вы сможете объяснить вот оно: где первый операнд регистр, а второй константа Микрокоманды, предлагаемые для исполнения команды конъюнкция: извлечение из памяти программ кода команды; декодирование кода команды; формирование адреса РОНа приёмника; хранение адреса РОНа приёмника в служебном регистре (при схемотехнической необходимости); инкрементирование РСчК; извлечение из памяти программ константы; выполнение логической операции конъюнкция над содержимым РОНа и константы (Rd К); загрузка промежуточного результата в служебный регистр (при схемотехнической необходимости); изменение состояния РФ; формирование адреса РОНа приёмника, указанного в служебном регистре; загрузка результата выполнения операции конъюнкция в РОН приёмник; инкрементирование РСчК;. переход к исполнению следующей команды. Собсно вопрос, вот я не тупой вроде, знаю, что инкрементировать счетчик это значит перейти к исполнению следующей команды, но каким тут макаром происходит два раза инкрементирование, во время исполнения одной команды!? И что служебный регистр, в который загружается промежуточный результат и остается там навеки(потому как он из регистра этого нигде далее не загружается) SII, ваш короткий ответ, по поводу некоторых адресаций дал мне много полезной информации... Еще бы предыдущий мой пост разоблачить
Luzer "Прямая регистровая" -- это когда операнд лежит в регистре, а в коде команды задан номер этого регистра (ну или если регистр задан неявно, самим кодом операции -- как в "коротких" разновидностях MOV для EAX). А "косвенная регистровая" -- это когда в команде указан номер регистра, а операнд находится в памяти по адресу, содержащемуся в этом регистре.
Luzer инкрементировать счетчик это значит перейти к исполнению следующей команды, но каким тут макаром происходит два раза инкрементирование, во время исполнения одной команды!? - Так все просто, батенька. Команды имеют разную длину. Пример - CLC, CLD, DAA, XCHG AX,SI - эти зверушки ОДНОБАЙТОВЫЕ. Процессор делает выборку, декодирует КОП, видит, что команда однобайтная, исполняет ее, инкременирует программный счетчик. А вот 2-х байтовые зверушки - XOR AX,AX, DIV BX, MOV AX,SI. После декодирования КОПа проц обнаруживает, что команда многобайтная - значит, он обязан сделать столько инкрементов, из скольки байт состоит команда. Это гарантирует, что следующая выборка из памяти - это КОП.