Cтраница 3
Включает кросс-трансляторы, кросс-ассемблер, интерпретатор команд объектной ЭВМ и средства переноса на объектную ЭВМ. [31]
Иногда выход кросс-ассемблера не загружается в СПМ, а выводится на перфоленту для программатора ППЗУ. В этом случае кросс-ассемблер должен генерировать двоичный код либо при выводе загрузочного модуля на перфоленту должна использоваться простая программа для преобразования кода ASCII в двоичный код. [32]
Второй способ, которому отдают предпочтение в Стэнфордском университете и во многих других учебных заведениях, заключается в использовании возможностей, заложенных в большой университетской ЭВМ, для выполнения редактирования и кросс-ассемблирования. Объектные файлы, сформированные кросс-ассемблером на университетской ЭВМ, для прогона и отладки загружаются в систему разработки. В целях упрощения загрузки для объектных файлов используется формат в коде ASCII и имеется канал связи для последовательной передачи данных между университетской ЭВМ и системой разработки; кроме того, можно работать с гибкими дисками или магнитными лентами в кассетах. Каналы связи могут быть как коммутируемыми, так и некоммутируемыми. В ПЗУ системы разработки входит небольшая программа, которая обеспечивает создание виртуальной связи между университетской ЭВМ и пультом системы разработки, так что студенты могут записывать информацию на запоминающие устройства большой ЭВМ и загружать объектные файлы. [33]
Кросс-ассемблер выполняет точно такие же функции, что и само-ассемблер: трансляция мнемонических команд в машинный код, выполнение псевдоопераций, обнаружение синтаксических ошибок и обработка макрокоманд. Отличие заключается в том, что кросс-ассемблер реализуется на большой машине, а не на микропроцессоре, в котором выполняется ассемблированная программа. Обычно кросс-ассемблер написан на Фортране и может работать на многих больших машинах. Вместе с моделирующей программой разработчик может создать и проверить любые программы, кроме критичных во времени, до проектирования аппаратных средств. [34]
Редакторы используются для разнообразных целей и имеются в большинстве системных программных модулей. Они применяются для создания входных модулей для кросс-ассемблеров и СПМ. [35]
ПО с использованием кросс-средств приведена на рис. 4.41. Работа кросс-средств начинается с трансляции исходной программы ( модуля), написанной программистом. Программа на языке ассемблера транслируется с помощью кросс-ассемблера на машинный язык, образуя объектный модуль. Если исходный модуль написан на языке высокого уровня, то трансляция производится с помощью соответствующей программы кросс-компилятора. [36]
Если ассемблер или компилятор реализуются на той же ЭВМ, для которой ими вырабатывается объектная программа, то они называются резидентным ассемблером и резидентным компилятором соответственно. Если ассемблер или компилятор реализуются на ЭВМ другого типа, то они называются кросс-ассемблером и кросс-компилятором соответственно. Та ЭВМ, для которой кросс-ассемблер или кросс-компилятор создает объектные программы, называется целевой ЭВМ. [37]
Выпускаемые изготовителями микропроцессоров системы разработки обычно обеспечивают возможность развития лишь соответствующих семейств микропроцессоров. Тем не менее нет никаких причин для того, чтобы система разработки не могла включать кросс-ассемблер, который генерирует программы для любого микропроцессора. [38]
Кросс-ассемблер выполняет точно такие же функции, что и само-ассемблер: трансляция мнемонических команд в машинный код, выполнение псевдоопераций, обнаружение синтаксических ошибок и обработка макрокоманд. Отличие заключается в том, что кросс-ассемблер реализуется на большой машине, а не на микропроцессоре, в котором выполняется ассемблированная программа. Обычно кросс-ассемблер написан на Фортране и может работать на многих больших машинах. Вместе с моделирующей программой разработчик может создать и проверить любые программы, кроме критичных во времени, до проектирования аппаратных средств. [39]
Проектирование программы осуществляется параллельно с созданием прототипа. Когда определена архитектура системы, аппаратные и программные средства ее разрабатываются параллельно, и взаимодействие между группами разработчиков становится по мере завершения проекта все более тесным. С помощью кросс-ассемблеров, моделирующих программ и законченных систем проектирования микро - ЭВМ ( СПМ) можно отладить почти всю программу. [40]
Если ассемблер или компилятор реализуются на той же ЭВМ, для которой ими вырабатывается объектная программа, то они называются резидентным ассемблером и резидентным компилятором соответственно. Если ассемблер или компилятор реализуются на ЭВМ другого типа, то они называются кросс-ассемблером и кросс-компилятором соответственно. Та ЭВМ, для которой кросс-ассемблер или кросс-компилятор создает объектные программы, называется целевой ЭВМ. [41]
![]() |
Использование микропроцессора и интегральных микросхем интерфейса с периферийными устройствами для управления приборо. м. [42] |
Преимущества микропроцессора SC / MP заключаются в том, что он экономичен и прост в работе. Он легко может быть запрограммирован в машинных кодах, на ассемблере или языке Бейсик. Для него существует целый ряд кросс-ассемблеров. Он широко используется во многих лабораториях, и один из таких примеров приведен в гл. [43]
Чтобы облегчить разработку математического обеспечения для интеллектуального терминала, на основной ЭВМ был создан кросс-ассемблер. Это позволяет хранить тексты программ на исходном языке в основной ЭВМ и редактировать их в режиме разделения времени. Основная проблема, связанная с использованием кросс-ассемблера ( не считая затрат времени и сил на его написание), состоит в транспортировке объектного кода, являющегося выходом ассемблера, в интеллектуальный терминал для выполнения. Для решения этой проблемы был создан двоичный загрузчик, передающий объектный код в терминал по телефонным линиям связи. Загрузчик размещается частично в основной ЭВМ, частично в терминале. Часть, находящаяся в основной ЭВМ, кодирует одно 16-разрядное машинное слово тремя 6-разрядными литерами, что позволяет использовать стандартный набор литер системы с разделением времени. Два дополнительных разряда применяются для обнаружения ошибок. Кроме того, каждый блок литер сопровождается контрольной суммой ( в виде 6-разрядного кода литеры), что помогает обнаружить исчезновение символов. Если ошибка выявлена, программа в терминале требует повторения передачи последнего блока. Часть загрузчика, находящаяся в терминале, декодирует поступающие строки литер в двоичные машинные слова и помещает их в соответствующие ячейки памяти. [44]
![]() |
Примеры ассемблерных команд МП 8080. [45] |