ВУЗ:
Составители:
Рубрика:
86
занимающей непрерывный блок адресов от 0х0000 до 0хFFFF рисунок 2.
Следует иметь ввиду, что 1024 байт (0хFC00 – 0xFFFF) этой памяти
зарезервированы для целей производителя и не доступны для хранения
программ пользователя.
По умолчанию память программ настраивается только для чтения.
Однако CIP-51 может записывать данные в память программ, для чего
необходимо разрешить запись во Flash-память программ. Эта возможность
позволяет CIP-51 обновлять программный код и использовать память
программ для долговременного хранения данных.
Рис.2. Память программ/данных (Flash)
Программный стек может быть размещен в любом месте 256-
байтной памяти данных. Область стека определяется с использованием
указателя стека (Stack Pointer – SP, 0x81). SP будет указывать на
последнюю использованную ячейку. Следующее значение, загружаемое
в стек, размещается по адресу SP+1, и затем SP инкрементируется. При
сбросе SP инициализируется значением 0х07. Поэтому первое значение,
загружаемое в стек, размещается по адресу 0х08, которое также
является первым регистром (R0) регистрового банка 1. Таким образом,
если требуется использовать более одного банка регистров, SP следует
инициализировать адресом ячейки ОЗУ, не используемой для хранения
данных. Стек может иметь глубину до 256 байт.
МК также имеют встроенный аппаратный регистратор стековых
операций, который представляет собой 32-разрядный сдвиговый
регистр. Каждая команда PUSH или инкремент SP загружают один
регистрационный бит в этот регистр, каждая команда CALL или
Страницы
- « первая
- ‹ предыдущая
- …
- 82
- 83
- 84
- 85
- 86
- …
- следующая ›
- последняя »