Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь КАТЕГОРИИ: АрхеологияБиология Генетика География Информатика История Логика Маркетинг Математика Менеджмент Механика Педагогика Религия Социология Технологии Физика Философия Финансы Химия Экология ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
WARNING: Symbol TWO undefined⇐ ПредыдущаяСтр 12 из 12
WARNING: Symbol X1 undefined Использование программы, состоящей из отдельных сегментов Обычно мало-мальски сложная прикладная программа представляет совокупность нескольких единиц – модулей. Это следует также из принципов структурного программирования. Физической единицей программы является программный модуль (файл). Логической единицей программы на ассемблере является секция или сегмент. Функциональный модуль программы (подпрограмма, процедура и т.д.) может совпадать с секцией или объединять несколько секций. Использование нескольких программных модулей для получения общей программы обусловлено существованием больших и сложных программ, совместной работой нескольких программистов, удобством разработки программы. Механизм секций поддерживается современными языками ассемблера в связи с использованием в процессорах памяти с достаточно разветвленной (и иногда сложной) структурой памяти, состоящей из блоков различного назначения и с различными характеристиками. Программу, состоящую из нескольких секций, можно загружать в разные блоки и места памяти, распределяя различные секции программы в зависимости от назначения. Например, часть программы, представляющую команды инициализации процессора, которые выполняются один раз при включении системы и время выполнения которых не критично, можно разместить в медленной внешней памяти, а критичные с точки зрения времени выполнения фрагменты - в быстрой внутренней памяти процессора. Отдельный программный модуль не связан с определенным количеством секций - модуль может содержать одну или несколько секций, в свою очередь секция может быть расположена в нескольких программных модулях. Каждая секция может являться отдельным функциональным элементом программы. При этом секция может быть независимо настроена на размещение в определенном месте (в соответствии с требуемыми типом и адресом памяти) используемого пространства памяти. Эта настройка на конкретные адреса, так же как и размещение секций в определенном порядке, осуществляется компоновщиком Секции (сегменты) программы прежде всего разделяются по назначению. Как правило, во всех языках используются (иногда этим и ограничиваются) секции трех видов: секции кодов программы, секции инициализируемых данных программы (т.е. данных, которые загружаются в память) и секции не инициализируемых данных (т.е. данных появляющихся в процессе выполнения программы). Секции могут иметь имя, задаваемое программистом (пользователем).
В языке AVSIM механизм сегментов поддерживается специальными директивами. Организация сегментов Для организации сегментов используются несколько директив. Директива defseg Формат директивы defseg <имя сегмента>[, атрибуты сегмента] Директива определяет используемый в программе сегмент. Обязательным элементом является имя сегмента. Атрибуты сегмента (о них чуть ниже) являются необязательным элементом. Директива seg Формат директивы seg <имя сегмента> Данная директива открывает сегмент. Директива определения сегмента должна предшествовать директиве открытия. Она может стоять в начале программы. Сегмент закрывается либо директивой открытия другого сегмента, либо директивой конца программы end. ЛИТЕРАТУРА. 1.Проектирование микропроцессорной электронно-вычислительной аппаратуры: Справочник/В.Г.Артюхов и др. - К.:Техника,1988. 2.Гуртовцев А.Л., Гудыменко С.В. Программы для микропроцессоров - Минск: Высш. шк., 1989. 3.Р.Токхайм. Микропроцессоры. - М.:Энергоатомиздат, 1989. 4.Григорьев В.Л. Программное обеспечение микропроцессорных систем. - М.:Энергоатомиздат,1989. 5.Гольденберг Л.М. и др. Цифровые устройства и микропроцессорные системы. -М.:Радио и связь,1992. 6.Хоровиц П.,Хилл У. Искусство схемотехники Т.2. - М.:Мир,1983. 7.Микропроцессоры и микропроцессорные комплекты интегральныхсхем. В 2-х томах./под ред. В.А.Шахнова - М.:Радио и связь,1989. 8. Учебный стенд SDK-1.1. Руководство пользователя 9. ADuC 812. Многоканальный АЦП со встроенным микропроцессором и FLASH. 10. ADuC 812. Multichannel 12-Bit ADC with Embedded FLASH MCU 1. Учебный стенд SDK-1.1. Руководство пользователя (Версия 1.0.11). 11. Принципиальная схема учебного лабораторного стенда SDK-1.1 (Rev 4, 03/2005). 12.. PCF8583: Clock/calendar with 240 x 8-bit RAM Datasheet. 1997. 13. AT24C02A/04A: Two-wire Automotive Temperature Serial EEPROM (Rev D, 4/2007). 14. Specification WH1602A-NYG-CT (Rev 0, 04/2004).
|
|||||
Последнее изменение этой страницы: 2017-01-25; просмотров: 120; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.17.208.206 (0.008 с.) |