Описания языка Ассемблера (28_09_07)




Разработка в структурно логической схемы МП

 

 
 

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

 

Адресная шина

 

Адресная шина должна иметь разрядность, достаточную для передачи адреса заданной длины.

Шина данных. Разрядность шины данных обычно совпадают с длиной байт. В случаи, когда все команды имеют одинаковую длину, она совпадает с основным словом.

Программный счетчик – содержит адрес текущей выполняемой программы. Автоматически увеличивает длину команд, при переходе на следующую.

Регистр команд (IR) – предназначен для приема из памяти и хранении кода команд.

Дешифратор –определяет что это за команда.

Блок управления и синхронизация – выполняет управлением микропроцессором.

DAK – регистр данных и адреса.

Роны – регистры общего назначения.

Режимы адресации

 

Адрес исполнительный (адрес ячейки памяти или регистра) с которым работает команда, можно указывать различными способами, руководствуюсь следующими соображениями.

Исполнение команд с более коротким адресом.

Обеспечение простого доступа к возможно большему объему памяти.

Возможность изменения содержимого адресной части без изменения команды.

Обеспечение более быстрой адресации.

Использования более простого метода адресации во избегания ошибок.

Прямая адресация ADD B – в прямой адресации адрес исполнительный является частью команды. Длина команды зависит от адреса.

Прямая регистровая – место адреса исполнительного хранится номер регистра.

Косвенная адресация – адрес исполнительный находится по адресу, указанному в команде.

Косвенно регистровая – адрес исполнительный находится по адресу регистра.

Непосредственная адресация – обрабатываемые данные являются частью команды.

Относительная – Адрес исполнительный формируется путем сложения программного счетчика и смещением, которое находится в команде.

Индексная адресация – адрес исполнительный образуется путем сложения индексного регистра с адресом, который находится в команде.

Базовая адресация – используется для организации перемещения программы в памяти. Для этого пишется псевдо команда, которая закрепляет один из регистров в качестве базового. В этот регистр записывается адрес загрузки и все исполнительные адреса записываются.

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

Стековая – адресом данных является содержимое указателя стеков.

Система команд микро процессора.

Команды микропроцессора в памяти занимают от 1 байта до максимальной длены.

1 байт команды содержит код операции. В некоторых код операций может размещаться и во втором байте. Требование к системе команд это

функциональная полнота – система команд должна предоставлять максимально удобные средства для программирования, по составлениям алгоритма, в условиях ограниченных ресурсов.

Минимальность – количество длина команд должна быть минимальной.

Система команд микропроцессора обычно содержит следующие операции:

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

Арифметические операции – сложение вычитание, умножение, деление.

Логические – и, или, не.

Сдвиг.

Условные переходы.

Изменение содержимого регистра кода условий (флажки).

Команды вода, вывода и останова.

Проектирование системы команд значительной степени зависит от заданных режимах адресаций.

При выборе формата команд следует учитывать следующие особенности:

3 байта  
1 байт  
1 В коротких командах часто используется переменная длина кода операций. Это позволяет плотнее упаковывать информацию и сократить число форматов команд и их длину.

 
 

 

Максимальное количество команд 256.

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

 

   
RI 0  
RI 1  
RI 2  

 

Команда с непосредственной адресацией – длина непосредственного операнда минимум должна быть 1 байт.

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

Некоторые команды могут только составлять код операций.

Смещение.

 

Описания языка Ассемблера (28_09_07)

 

Ассемблер – машинно-ориентированный язык, операторы которые транслируются один к одному, либо один к нулю (псевдо операции, передают информацию загрузчику, линковщику). Ассемблер наиболее эффективно используют ресурсы ЭВМ. В общим виде операторы ассемблера выглядят так: метка, код операции, [операнды], [комментарий], или [признак комментария].

Существуют различные типы ассемблера:

Резидентный ассемблер – программа, которая хранится в ПЗУ и к ней имеется постоянная доступ. Кросс ассемблер – выполняется на ЭВМ общего назначения, и написана на языке программирования этого ЭВМ. Достоинства – разработка программы предшествует технической реализации. Используется мощная программное обеспечение ЭМВ. Выразительность языка и диагностика, обеспечивается преимущества машины выразительности языка и диагностики.

Существую абсолютные и перемещаемые ассемблеры. В абсолютном ассемблере адрес загрузки определяется псевдокомандой. Адрес загрузки известен во время ассемблирования, поэтому при построении адресных константы команд выполняется в абсолютных адресах. В перемещаемом ассемблере возможность определить адрес загрузки происходит не вовремя ассемблирования а во время загрузки программы в память. Для этого относительный адреса адресных констант команд увеличивается на адрес загрузки.

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

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

Ассемблер строит дополнительную таблицу переходов. Все команды обращения в перед осуществляют передачу косвенно, через эту таблицу.

Достоинством однопросмотрового ассемблера является выигрыш в скорости ассемблирования. Тем не менее большинство ассемблеров современных ЭВМ двухпросмотровые. Целью первого просмотра является определения адреса для каждой команды в программе и формирования символических имен или меток. Целью второго прохода является генерация машины команды констант, обработка псевдо команд а так же распечатка листинга.

 



Поделиться:




Поиск по сайту

©2015-2024 poisk-ru.ru
Все права принадлежать их авторам. Данный сайт не претендует на авторства, а предоставляет бесплатное использование.
Дата создания страницы: 2019-06-03 Нарушение авторских прав и Нарушение персональных данных


Поиск по сайту: