Звоните! 
 (926)274-88-54 
 Бесплатная доставка. 
 Бесплатная сборка. 
Ассортимент тканей

График работы:
Ежедневно. С 8-00 до 20-00.
Почта: soft_hous@mail.ru
Читальный зал -->  Отладка микропроцессорных систем 

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [ 64 ] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82

можно обозначить CONIN и распределить (поставить в соответствие) каналу 1. Любое считывание из канала 1 вызовет ввод в программу символа с клавиатуры.

Видеодисплей и клавиатура, как правило, имеют номера каналов ВВ по умолчанию, которые при необходимости пользователь может изменить. Можно подключить любые другие устройства и оформить их программы-драйверы как часть операционной системы. Для этого в начале работы выполняется программа генерации системы, где драйвер устройства встраивается в операционную систему.

Драйверы устройств ВВ обеспечивают гибкое управление вводом-выводом и позволяют моделировать ВВ разрабатываемой системы с помощью стандартных периферийных устройств.

8.1.5. Ассемблеры

Низшим уровнем, на котором можно программировать большинство микропроцессоров, является машинный код. Числа машинного кода представляют собой двоичные коды, которые микропроцессор дешифрирует для выполнения команд. Обычно при программировании пользуются 16-ричными значениями, которыми удобнее оперировать человеку. Программирование в машинном коде связано со значительным числом ошибок и трудностями внесения поправок при использовании абсолютной адресации. Каждый набор команд машинного кода имеет соответствующий набор мнемокодов языка АССЕМБЛЕР с однозначным соответствием между конкретной командой машинного кода и ассемблерной мнемоникой. Программирование с привлечением ассемблерных мнемоник эффективнее программирования в машинных кодах, так как возникает меньше ошибок из-за использования содержательных меток. Написанную в ассемблерных мнемониках программу необходимо преобразовать в машинный код, прежде чем ее можно выполнить в вычислительной системе. Эта задача возлагается на программу-ассемблер. Листинг программы в ассемблерных мнемониках с помощью редактора вводится в систему проектирования, а затем запоминается как файл во внешней памяти. Большинство ассемблеров имеют 4 поля, в которые вводится информация. Эти поля часто называются полями МЕТКИ, КОП, ОПЕРАНДА и КОММЕНТАРИЯ. Поле МЕТ-



КА позволяет обращаться к адресам по имени, а не по абсолютному адресу. Программы можно писать, пользуясь вместо адресов метками, а действительные адреса формируются только на заключительной стадии ассемблирования. В поля КОП и ОПЕРАНД вводятся ассемблерные мнемоники команд, а поле КОММЕНТАРИЙ позволяет программисту делать пояснения к программе с целью сделать ее более понятной. Знакомясь с программой, программист может разобраться в ее функциях по тщательно продуманным комментариям. Приведем простой пример ассемблерного листинга:

МЕТКА

START:

(08H)

LOOP:

(08H)

ОПЕРАНД

LOOP

КОуМуМЕНТАРИЙ

; загрузить в регистр ; А

; первое выводимое ; число

; произвести инкре-; мент числа ; зациклить до полу-; чения нуля

В программе нет указаний прямых адресов, и программист должен помнить только мнемонические коды команд, а не 16-ричные числа в случае программирова- ния на машинном коде. Отметим, что в листинге после чисел ставится буква Я, информирующая ассемблер о представлении чисел в 16-ричном формате. Большинство ассемблеров допускают системы счисления с основаниями 2, 10 и 16. Поле комментария (обычно начинающегося точкой с запятой) не участвует в операции ассемблирования и предназначено только для помощи программисту.

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

Ни один компьютер не сможет преобразовать приведенную выше программу в машинный код без дополнительной информации о том, в какой области памяти должна находиться программа. Эта важнейшая информация называется директивой ассемблера, и она должна быть задана до начала ассемблирования. Директивой начального адреса ассемблируемой программы почти во



всех ассемблерах служит мнемоника ORG (Origin - начало). Директива ORG ЮООН заставит ассемблер поместить код операции первой команды программы по 16-рич-ному адресу 1000. Когда в программе встречаются команды перехода, ассемблер встраивает в программу машинные коды адресов в соответствии с определенным директивой ORG начальным адресом.

Ассемблеру необходимо сообщить, в каком месте программы следует закончить процесс ассемблирования программы. Для этого в тексте программы после последней команды помещается директива END. Имеются также директивы резервирования памяти для результатов промежуточных вычислений и (или) таблиц. С помощью соответствующей директивы ассемблера любой переменной, к которой в исходной программе имеются обращения по символическому имени, должно быть присвоено численное значение до начала ассемблирования. Например, входной порт, через который считываются состояния переключателей, в программе можно обозначить SWIT. Чтобы ассемблер мог преобразовать программу в машинный код, SWIT необходимо определить как численный адрес порта. Обычно эту задачу выполняет директива приравнивания EQU. Если, например, порт, обозначенный SWIT, в действительности является входным портом 04, перед началом ассемблирования следует использовать директиву SWIT EQU 04.

Многие ассемблеры называются макроассемблерами, так как они позволяют определять макрокоманды и включать их в машинный код объективной программы. Макрокоманда аналогична определяемой пользователем функции на языке высокого уровня; она записывается (определяется) I раз, а затем вызывается по имени. Например, можно написать макрокоманду умножения двух 16-битных чисел и назвать ее MULT. В исходной программе ассемблерная директива MACRO MULT заставит ассемблер ввести макрокоманду в данной точке прикладной программы. Макрокоманда отличается от подпрограммы тем, что она записывается 1 раз, не вводится как последовательность кодов при каждом ее вызове.

Ассемблеры широко используются для получения программ на машинном коде в системах управления. Ассемблерные мнемоники имеют однозначное соответствие с машинными кодами, поэтому ассемблерная программа



1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 [ 64 ] 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82



ООО «Мягкий Дом» - это Отечественный производитель мебели. Наша профильная продукция - это диваны еврокнижка. Каждый диван можем изготовить в соответствии с Вашими пожеланияи (размер, ткань и материал). Осуществляем бесплатную доставку и сборку.



Звоните! Ежедневно!
 (926)274-88-54 
Продажа и изготовление мебели.


Копирование контента сайта запрещено.
Авторские права защищаются адвокатской коллегией г. Москвы
.