Популярные услуги

Все письменные КМ под ключ за 3 суток! (КМ-6 + КМ-7 + КМ-8 + КМ-9 + КМ-10)
КМ-6. Динамические массивы. Семинар - выполню любой вариант!
КМ-2. Разработка простейших консольных программ с использованием ООП + КМ-4. Более сложные элементы ООП - под ключ!
Любая задача на C/C++
Одно любое задание в mYsql
Сделаю ваше задание: Лабораторная работа на Pascal / Lazarus
Любой тест по базам данных максимально быстро на хорошую оценку - или верну деньги!
Любой реферат по объектно-ориентированному программированию (ООП)
Оба семинара по программированию под ключ! КМ-2. Разработка циклических алгоритмов + КМ-3. Функции и многофайловые программы в Си
Повышение уникальности твоей работе

Структура памяти

2021-03-09СтудИзба

СТРУКТУРА ПАМЯТИ

Вся память контроллеров делится на регистры

• общего назначения (РОН)

• специальные

• конфигурационные

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

Конфигурационные регистры являются  специальными регистрами, которые изменяют конфигурацию контроллера.

Память делится на разные области:

память программ

Рекомендуемые материалы

• память данных

• энергонезависимая память (ЕЕРRОМ)

Виды адресации:

• прямая или непосредственная

• относительная

• косвенная

При прямой адресации адрес заключен в команде.

Относительная: GОТО $+2; переход на две строки ниже.

Косвенная: FSR [адрес]

                                 INDF [значение по адресу]

Банк памяти быстрого доступа

Банк памяти быстрого доступа - архитектурное решение, которое является особенно полезно для оптимизации кода при написании программ на языке С. Методы, используемые компилятором С, могут быть также полезны для программ, написанных на ассемблере.

Эта область памяти может использоваться для:

• хранения промежуточных значений вычислений

• хранения отдельных служебных переменных

• быстрого доступа к отдельным переменным

• хранения обычных переменных

• быстрого доступа к регистрам специального назначения

Банк памяти быстрого доступа содержит старших 128 байт банка 15 (регистры специального назначения) и нижних 128 байт банка 0 памяти данных.

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

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

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

Регистр выбора банка памяти данных BSR (18 серия)

Потребность в большем объеме памяти данных определяет наличие разделения ОЗУ на банки памяти. Вся память данных разделена на 16 банков.

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

ВSR<3:0> содержит 4 старших бита 12-разрядного адреса регистра в памяти данных.

ВSR<7:4> всегда читаются как '0', а запись не будет иметь никакого эффекта.

С помощью команды МОVLВ можно выбрать необходимый банк памяти данных. Если выбранный банк не реализован, то чтение будет давать результат '0', а любая запись игнорируется. Биты регистра STATUS будут изменяться в соответствии с выполняемой командой.

Каждый банк памяти данных имеет внутренние адреса от ООh до FFh (256 байт). Вся память данных реализована как статическое ОЗУ.

Команда МОVFF игнорирует содержимое регистра ВSR, т.к. значение 12-разрядных адресов содержится в коде команды.

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

Косвенная адресация, регистра INDF и FSR

Косвенная адресация - режим адресации памяти данных, когда адрес регистра не включается в код команды.

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

Указатель размещается в памяти данных, поэтому может быть изменен программным способом.

Этот метод адресации может быть полезен для операции с таблицами, размешенными в памяти данных.

Косвенная адресация возможна при использовании одного из регистров INDF. Любая команда, использующая регистр INDF фактически обращается к регистру, указанному в FSR. Косвенное чтение регистра INDF будет давать результат 00h. Косвенная запись в регистр INDF не вызовет никаких действий. Регистр FSR содержит 12-разрядный адрес ячейки в памяти данных. Регистр INDFn - не физический регистр. Обращение к регистру INDFn фактически вызовет действие с регистром, адрес которого указан в FSRN (принцип косвенной адресации).

В микроконтроллерах РIС18FХХ2 реализовано три 12-разрядных регистра косвенной адресации, для обращения ко всей области памяти данных (4096 байт):

• FSR0 состоит из FSR0Н: FSR0L

• FSR1 состоит из FSR1Н: FSR1L

• FSR2 состоит из FSR2Н: FSR2L

Дополнительно есть регистры INDFO, INDF1 и INDF2, которые физически не реализованы.

Обращение к этим регистрам фактически вызовет действие с регистром, адрес которого указан в FSR.

Если команда выполняет запись в регистр INDFO, то данные будут записаны в регистр, адрес которого указан в FSR0Н: FSR0L.

Чтение регистра INDF1 возвратит значение регистра, адрес которого указан в FSR1Н: FSR1L.

Регистры INDFn могут использоваться как операнды команд.

Если INDFO, INDF1, INDF2 читаются косвенно через FSR, то чтение будет давать результат '0'.

Операция косвенной записи в регистры INDFO, INDF1, INDF2 будет эквивалентна команде NOP, и на биты регистра STATUS влияния не окажет.

Операция косвенной адресации

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

• При косвенной адресации регистр FSRn не изменяется (обращение к INDFn)

• Автодекремент FSRn после косвенной адресации (обращение к POSTDECn)

• Автодекремент FSRn после косвенной адресации (обращение к POSTINCn)

• Автодекремент FSRn перед косвенной адресацией (обращение к PREINCn)

Значение в регистре WREG используется как смешение к FSRn. После косвенной адресации значение WREG и FSR не изменяется (обращение к PLUSWn).

Состояние FSR не отображается в регистре STATUS при использовании автоинкремента или декремента при косвенной адресации. Например, если значение в FSR становиться равным ‘0’, то бит 7 не будет установлен в ‘1’.

Обратите внимание на лекцию "3 - Конструкция корпуса".

Инкремент и декремент FSR затрагивает все 12 разрядов адреса. Например, переполнение FSRnL вызовет автоматическое увеличение FSRnН. Эти особенности позволяют использовать FSRn как указатель программного стека, в дополнение к операциям с таблицами в памяти данных.

Обращение к PLUSWn позволяет реализовать индексированную косвенную адресацию. К регистру FSR добавляется значение регистра WREG, чтобы сформировать адрес ячейки. Значение регистра при этом не изменяется.

Если регистр FSR содержит значение, которое указывает на один из регистров INDFn, косвенной чтение будет давать результат ‘0’, а запись эквивалентна команде NOР (биты регистра STATUS изменяются).

Если адресатом при косвенной адресации являются регистры FSRnН или FSRnL, то операция записи имеет более высокий приоритет, чем автоинкремент и автодекремент.

Механизм косвенной адресации


Свежие статьи
Популярно сейчас
А знаете ли Вы, что из года в год задания практически не меняются? Математика, преподаваемая в учебных заведениях, никак не менялась минимум 30 лет. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
5160
Авторов
на СтудИзбе
439
Средний доход
с одного платного файла
Обучение Подробнее