Ограниченный формат слова большинства микропроцессоров (МП) влияет на уменьшение числа возможных методов адресации, а также ухудшает пригодность некоторых из них. Многие МП имеют 4- или 8-битные слова, что делает использование значительного числа бит команды для поля адресации нежелательным. Это приводит к ограниченному числу методов адресации, используемых в популярных МП.
1. Прямая Адресация
Прямая адресация в МП часто оказывается неудобной из-за короткого формата слова. Необходимость дважды обращаться к памяти для формирования прямого адреса делает этот метод менее эффективным. Например, для сложения содержимого ячейки памяти 50 с аккумулятором потребуется последовательность команд:
- LOAD R2, 50
- ADD R2
2. Индексная Адресация
Индексная адресация также страдает от необходимости использования дополнительных слов в памяти программ. Это увеличивает время выполнения команды в процессоре.
3. Относительная Адресация
Относительная адресация используется для уменьшения формата адреса, но ограничивает возможность перемещения по полю адресов памяти. Она также требует дополнительного машиностроительного времени.
4. Регистровая и Косвенная Адресация
Регистровая и косвенная адресации полезны в МП благодаря короткому формату команд. Примеры процессоров, использующих регистровую косвенную адресацию, включают Intel 4040, Intel 8008, Intel 8080, RCA CDP 1802 и Fairchild F-8. Однако, это требует от программиста организации данных в памяти.
5. Стековая Адресация
Стековая адресация не используется широко в МП, за исключением случаев запоминания адресов возврата из подпрограмм и содержимого регистров. Процессоры, такие как Intel 8080 и Motorola 6800, используют внешние стеки для этих целей.
В таблице ниже представлены основные методы адресации, используемые в микропроцессорах, и их особенности:
Метод Адресации | Особенности |
---|---|
Прямая Адресация | Неудобна из-за двойного обращения к памяти |
Индексная Адресация | Требует дополнительных слов в памяти и увеличивает время выполнения команд |
Относительная Адресация | Ограничивает возможность перемещения и требует дополнительного времени |
Регистровая Адресация | Эффективна, но требует упорядочивания данных в памяти |
Косвенная Адресация | Позволяет короткий формат команд, но требует организации данных |
Стековая Адресация | Ограничено используется для запоминания адресов возврата и содержимого регистров во время прерываний |
Эти ограничения адресации в микропроцессорах влияют на структуру и эффективность программирования, а также на выбор методов для выполнения конкретных задач.