рефераты конспекты курсовые дипломные лекции шпоры

Реферат Курсовая Конспект

Формат команд

Формат команд - Лекция, раздел Программирование, Основы алгоритмизации и программирования Машинная Команда Представляет Собой Закодированное По Определенным Правилам У...

Машинная команда представляет собой закодированное по определенным правилам указание процессору на выполнение некоторой операции. Правила кодирования команд называются форматом команд. Команды процессоров архитектуры IA-32 считаются сложными. Максимальная длина машинной команды IA-32 составляет 15 байт. Реальная команда может содержать гораздо меньшее количество полей, вплоть до одного – только код операции.

Типовая команда, в общем случае, должна указывать:

1) код подлежащей выполнению операции;

2) адреса исходных данных (операндов), над которыми выполняется операция;

3) адрес, по которому должен быть помещен результат операции.

В соответствии с этим команда состоит из двух частей: операционной и адресной:

Формат команды определяет ее структуру, то есть количество двоичных разрядов, отводимых под всю команду, а также количество и расположение отдельных полей команды. Полем называется совокупность двоичных разрядов, кодирующих составную часть команды. При создании ЭВМ выбор формата команды влияет на многие характеристики будущей машины. Оценивая возможные форматы, нужно учитывать следующие факторы:

1) общее число различных команд;

2) общую длину команды;

3) тип полей команды (фиксированной или переменной длины) и их длина;

4) простоту декодирования;

5) адресуемость и способы адресации;

6) стоимость оборудования для декодирования и исполнения команд.

Приведенный на рис. 4.1 формат машинной команды является наиболее полным.

Как на уровне формата машинной команды соответствуют между собой машинные команды и команды ассемблера? Для примера рассмотрим типичную команду языка ассемблера:

mov ebx , eax

Команда MOV производит копирование содержимого регистра ЕАХ в регистр ЕВХ.

Соответствующая машинная команда будет выглядеть так:

8B D8

Значение 8В – код операции. Еще один пример команды MOV:

mov ecx , 128

Данная команда инициализирует содержимое регистра ЕСХ десятичным значением 128. Соответствующая машинная команда выглядит так:

B9 00000080

Значение поля с кодом операции – В9. Из примеров видно, что прямого соответствия между структурой команды ассемблера и соответствующей машинной командой нет. Несмотря на то, что команда ассемблера одна и та же (MOV), коды машинных команд – разные (8В и В9). Большинство команд ассемблера имеют несколько возможных вариантов сочетания операндов. Как показано в приведенных примерах, несмотря на одинаковые названия команд ассемблера, для каждого возможного сочетания операндов имеется своя машинная команда, со своим значением поля кода операции (рис. 4.1). Это говорит о том, что машинная команда всегда однозначна по отношению к производимым ею действиям на уровне аппаратуры. Несколько упрощая реальность, можно утверждать, что значение в поле кода операции является номером микропрограммы в блоке микропрограммного управления для каждой конкретной команды ассемблера с каждым конкретным вариантом сочетания операндов.

Рис. 4.1. Формат машинной команды.

 

Логически любая команда языка ассемблера содержит несколько элементов.

Элемент, описывающий, что делать, называется кодом операции (КОП). Значение в поле кода операции некоторым образом определяет в блоке микропрограммного управления подпрограмму, реализующую действия для данной команды.

Элементы, описывающие объекты, с которыми нужно что-то делать, являются операндами. Операнды в команде могут и не задаваться, а подразумеваться по умолчанию.

Элементы, описывающие, как делать, являются типами операндов и обычно задаются неявно. Они используются транслятором ассемблера при формировании машинной команды для определения значения поля кода операции.

Эти же элементы имеет и машинная команда, но в закодированном виде. Перевод команд ассемблера в соответствующие машинные команды осуществляет специальная программа – ассемблер, которую можно также назвать транслятором (компилятором) ассемблера.

 

– Конец работы –

Эта тема принадлежит разделу:

Основы алгоритмизации и программирования

Основы алгоритмизации и программирования... Литература В И Юров Ассемблер Учебник для вузов Н И Голубь Искусство программирования на Ассемблере Лекции и упражнения...

Если Вам нужно дополнительный материал на эту тему, или Вы не нашли то, что искали, рекомендуем воспользоваться поиском по нашей базе работ: Формат команд

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Организация памяти
Физическая память к которой процессор имеет доступ по шине адреса называется оперативной памятью. Реально ОЗУ организовано как последовательность ячеек, т.е. байтов. Диапазон значений физи

Основное применение организации виртуальной памяти
Сегментация – это механизм адресации, обеспечивающий существование нескольких независимых адресных пространств как в пределах одной задачи, так и в системе в целом для защиты задач от взаимного вли

Регистры общего назначения
Регистры общего назначения используются в программах для хранения: операндов

Сегментные регистры
Процессоры Intel аппаратно поддерживают сегментную организацию программы. Это означает, что любая программа состоит из трех сегментов: кода, данных и стека. Логически машинные команды в архитектуре

Регистры состояния и управления
В процессор включены два регистра, постоянно содержащие информацию о состоянии как самого процессора, так и программы, команды которой он в данный момент обрабатывает:

Обработка прерываний
Система прерываний любого компьютера является его важнейшей частью, позволяющей быстро реагировать на события, обработка которых должна выполнятся немедленно: сигналы от машинных таймеров, нажатия

К теме о регистрах 2.3 Регистры состояния и управления
В процессор включены два регистра, постоянно содержащие информацию о состоянии как самого процессора, так и программы, команды которой он в данный момент обрабатывает:

Жизненный цикл программы
Процесс разработки программы на ассемблере, включая постановку задачи, получение первых результатов и дальнейшее сопровождение программы, мало чем отличается от традиционного подхода с использовани

Процесс разработки программы
На рис. 6.1 приведена общая схема процесса разработки программы на ассемблере. Название программы соответствует рассмотренному далее примеру программы. На схеме выделено четыре этапа этого процесса

Лекция 6.
1. Синтаксис Ассэмблера Программа на ассемблере представляет собой совокупность блоков памяти, называемых сегментами. Программа может состоять из одного или нескольких таких блоков-сегмент

Лекция 7.
1. Простые типы данных Ассемблера Любая программа предназначена для обработки некоторой информации, поэтому вопрос о том, какие типы данных языка программирования доступны для использовани

Лекция 8.
1.Структура машинной команды. Способы задания операндов. Машинная команда представляет собой закодированное по определенным правилам указание микропроцессору на выполнение некоторой операц

Префиксы.
Необязательные элементы машинной команды, каждый из которых состоит из 1 байта или может отсутствовать. В памяти префиксы предшествуют команде. Назначение префиксов – модифицировать операцию, выпол

Байт режима адресации modr/m.
Значения этого байта определяет используемую форму адреса операндов. Операнды могут находиться в памяти в одном или двух регистрах. Если операнд находится в памяти, то байт modr/m определяет компон

Поле смещения в команде.
8-, 16– или 32-разрядное целое число со знаком, представляющее собой, полностью или частично (с учетом вышеприведенных рассуждений), значение эффективного адреса операнда. 6. Поле

Прямая адресация
Это простейший вид адресации операнда в памяти, так как эффективный адрес содержится в самой команде и для его формирования не используется никаких дополнительных источников или регистров. Эффектив

Косвенная базовая (регистровая) адресация
При такой адресации эффективный адрес операнда может находиться только в базовом регистре bx/ebx.   Синтаксически в команде этот режим адресации выражается заключением имени

Лекция 9.
1.Функциональная классификация машинных команд Система команд Pentium 4, последнего на сегодняшний день процессора архитектуры IA-32, включает в себя около 330 мнемоник машинных команд. Ес

Команды общего назначения
Командами данной категории охватывается базовый набор операций по обработке данных. Классификация целочисленных машинных команд приведена на рис.9.1.

Команды сопроцессора
Возможны три формата команд сопроцессора, аналогичные форматам команд центральных процессоров фирмы Intel. Это команды с обращением к оперативной памяти, команды с обращением к одному из численных

MMX-расширения
Расширение MMX ориентировано в основном на использование в мультимедийных приложениях. Основная идея MMX заключается в одновременной обработке нескольких элементов данных за одну инструкцию. Расшир

XMM-расширения
В 1999 году семейство процессоров Pentium фирмы Intel пополнилось новой мо­делью — процессором Pentium III. Основу его архитектуры составляет ядро про­цессора Pentium II, дополненное модулем SSE (S

Лекция 10.
1.Пересылка данных Алгоритм, представляет собой формализованное описание логики работы программы. Способы такой формализации весьма разнятся: от текстового описания последовательности дейс

Работа со стеком
Стек — это область памяти, специально выделяемая для временного хранения данных программы. Важность стека определяется тем, что для него в структуре программы предусмотрен отдельный сегмент. На тот

Хотите получать на электронную почту самые свежие новости?
Education Insider Sample
Подпишитесь на Нашу рассылку
Наша политика приватности обеспечивает 100% безопасность и анонимность Ваших E-Mail
Реклама
Соответствующий теме материал
  • Похожее
  • Популярное
  • Облако тегов
  • Здесь
  • Временно
  • Пусто
Теги