Память данных (ОЗУ).
Объем расположенной на кристалле памяти данных—128 байт. Объем внешней памяти данных может достигать 64 Кбайт. Первые 32 байта организованы в четыре банка регистров общего назначения, обозначаемых соответственно банк 0 — банк 3. Каждый из них состоит из восьми регистров R0 — R7. В любой момент программе доступен только один банк регистров, номер которого содержится в третьем и четвертом битах слова состояния программы PSW (см. ниже).
Оставшееся адресное пространство может конфигурироваться разработчиком по своему усмотрению: в нем располагаются стек, системные и пользовательские области данных. Обращение к ячейкам памяти данных возможно двумя способами. Первый способ — прямая адресация ячейки памяти. В этом случае адрес ячейки является операндом соответствующей команды. Второй способ — косвенная адресация с помощью регистров R0 или R1: перед выполнением соответствующей команды в один из них должен быть занесен адрес ячейки, к которой необходимо обратиться.
Для обращения к внешней памяти данных используется только косвенная адресация с помощью регистров R0 и R1 или с помощью 16-разрядного регистра-указателя DPTR. Он относится к группе регистров специальных функций, и с его помощью можно адресовать все 64 Кбайта внешней памяти.
Часть памяти данных представляет собой так называемую битовую область, в ней имеется возможность при помощи специальных битовых команд адресовываться к каждому разряду ячеек памяти. Адрес прямо адресуемых битов может быть записан либо в виде (Адрес Байта ).(Разряд), например выражение 21.3 означает третий разряд ячейки памяти с адресом 21H, либо в виде абсолютного битового адреса. Соответствие этих двух способов адресации можно определить по таблице.
Адрес байта | Адреса битов по разрядам | |||||||
Adr | D7 | D6 | D5 | D4 | D3 | D2 | D1 | D0 |
2FH | 7F | 7E | 7D | 7C | 7B | 7A | ||
2EH | ||||||||
2DH | 6F | 6E | 6D | 6C | 6B | 6A | ||
2CH | ||||||||
2BH | 5F | 5E | 5D | 5C | 5B | 5A | ||
2AH | ||||||||
29H | 4F | 4E | 4D | 4C | 4B | 4A | ||
28H | ||||||||
27H | 3F | 3E | 3D | 3C | 3B | 3A | ||
26H | ||||||||
25H | 2F | 2E | 2D | 2C | 2B | 2A | ||
24H | ||||||||
23H | 1F | 1E | 1D | 1C | 1B | 1A | ||
22H | ||||||||
21H | 0F | 0E | 0D | 0C | 0B | 0A | ||
20H |
Таблица.1. Адреса битовых областей памяти микроконтроллера 8051
ПРИМЕЧАНИЕ. Адрес прямо адресуемых битов может быть записан либо в виде выражения (Адрес Байта ).(Разряд), например выражение 21.3 означает адрес третьего разряда ячейки памяти с адресом 21H, либо в виде абсолютного битового адреса, который для данного бита равен (см. таблицу) 0B.
Дата добавления: 2016-03-27; просмотров: 727;