Изучение архитектуры и системы команд INTEL-совместимых микропроцессоров. Коршунов А.Д. - 30 стр.

UptoLike

Составители: 

30
величину которого можно задать в диалоге настроек. В пошаговом режиме
выполнение каждой команды происходит только после осуществления шага.
Пока программа запущена, нельзя производить ассемблирование. Во-первых,
различные команды в виде машинных кодов могут иметь различную длину (в
байтах), что может привести к смещению позиции выполнения на середину какой-
либо команды, в
результате чего будут выполняться совсем не те команды,
которые должны, или могут встретиться неизвестные инструкции. Во-вторых,
даже если смещение на середину команды не произойдет, возможна замена
инструкций одной программы инструкциями другой, что недопустимо.
2.3.1. Структура программ
Программа на языке ассемблера состоит из строк, имеющих следующий вид:
метка команда/директива операнды ; комментарий
Метка может быть любой комбинацией букв английского алфавита, цифр и
символа _ (подчеркивание), но цифра не может быть первым символом метки.
Большие и маленькие буквы не различаются. Во втором поле, поле команды,
может располагаться команда процессора, которая транслируется в исполняемый
код, или директива, которая не приводит к появлению нового кода, а
управляет
процессом ассемблирования. В поле операндов располагаются требуемые
командой операнды (то есть нельзя указать операнды и не указать команду). И
наконец, в поле комментариев, начало которого отмечается символом ; (точка с
запятой), можно написать все что угоднотекст от символа «;» до конца строки
не анализируется ассемблером.
Для облегчения читаемости ассемблерных
текстов принято, что метка
начинается на первой позиции в строке, команда — 17-й (две табуляции),
операндына 25-й (три табуляции) и комментариина 41-й или 49-й (пять или
шесть табуляций). Если строка состоит только из комментария, его начинают с
первой позиции.
                                                                           30
величину которого можно задать в диалоге настроек. В пошаговом режиме
выполнение каждой команды происходит только после осуществления шага.
    Пока программа запущена, нельзя производить ассемблирование. Во-первых,
различные команды в виде машинных кодов могут иметь различную длину (в
байтах), что может привести к смещению позиции выполнения на середину какой-
либо команды, в результате чего будут выполняться совсем не те команды,
которые должны, или могут встретиться неизвестные инструкции. Во-вторых,
даже если смещение на середину команды не произойдет, возможна замена
инструкций одной программы инструкциями другой, что недопустимо.


       2.3.1. Структура программ


    Программа на языке ассемблера состоит из строк, имеющих следующий вид:

     метка        команда/директива      операнды    ; комментарий


     Метка может быть любой комбинацией букв английского алфавита, цифр и
символа _ (подчеркивание), но цифра не может быть первым символом метки.
Большие и маленькие буквы не различаются. Во втором поле, поле команды,
может располагаться команда процессора, которая транслируется в исполняемый
код, или директива, которая не приводит к появлению нового кода, а управляет
процессом ассемблирования. В поле операндов располагаются требуемые
командой операнды (то есть нельзя указать операнды и не указать команду). И
наконец, в поле комментариев, начало которого отмечается символом ; (точка с
запятой), можно написать все что угодно — текст от символа «;» до конца строки
не анализируется ассемблером.
    Для облегчения читаемости ассемблерных текстов принято, что метка
начинается на первой позиции в строке, команда — 17-й (две табуляции),
операнды — на 25-й (три табуляции) и комментарии — на 41-й или 49-й (пять или
шесть табуляций). Если строка состоит только из комментария, его начинают с
первой позиции.