Логическое «НЕ», логическое отрицание, инверсия, « Х».
Принцип операции:меняет значение на противоположное 0 на 1 и наоборот. Этот принцип иллюстрирует следующий пример из электротехники (нормально выключенный контакт:
X Y Это логическое действе описываетследующая таблица истинности:
В электронике применяют логические элементы:инверторы, условно-графическое изображение которого приведено ниже:
Пример: 10011001B=01100110B
Приоритеты действий в порядке убывания:
Действия в скобках; Инверсия; Умножение, деление; Логические действия: - лог. умножение (/\), - лог.сложение (\/), - исключающее ИЛИ; Сложение, вычитание При равенстве приоритетов действия выполняются слева на право Задание3: Решить математическое выражение, используя все методы адресации, кроме косвенно-регистровой. (Листинг решения приведён ниже):
ORG 0 MOV A, 20H; (20H) →A
ORL A, #3CH; A V 3CH→A
MOV R0, A; A →R0 MOV A, 22H; (22H) →A ANL A, #07; A /\ 07→ (A) ADD A, R0; A + R0 → A
MOV 23H, A; A → (23H) L1: JMP L1;переход на метку L1(зацикливание на этом месте) END Задание4: Решить математическое выражение (Листинг решения приведён ниже):
ORG 0 MOV R0, #20H; 20H→ R0 MOV A, @ R0; ((R0)) →A
ORL A, #3CH; A V 3CH →A INC R0; R0 + 1→R0
ANL 22H, #07; (22H) /\ 07→ (22H) INC R0; R0 + 1→R0 ADD A, @R0; A + ((R0)) →A
INC R0; R0 + 1 →R0 MOV @R0, A; A→R0 L1: JMP L1;переход на метку L1(зацикливание на этом месте) END Задание 5: Самостоятельно написать программу для решения следующего математического задания.
4. Содержание отчёта 3.1. Тема и цель работы 3.2. Листинги сделанных самостоятельно программ. 3.3. Выводы
5. Контрольные вопросы 5.1 Понятие операнда. 5.2 Регистровый метод адресации. Примеры команд с этим методом. 5.3 Прямойбайтовый метод адресации. Примеры команд с этим методом. 5.4 Прямойбитовый метод адресации. Примеры команд с этим методом. 5.5 Непосредственный метод адресации. Примеры команд с этим методом. 5.6 Косвенно – регистровый метод адресации. Примеры команд с этим методом. 5.7 Косвенный метод адресации по сумме базового и индексного регистров. Примеры команд с этим методом. 5.8 Логическое умножение. Примеры команд с разными методами адресации. 5.9 Логическое сложение. Примеры команд с разными методами адресации. 5.10 Логическое исключающее «ИЛИ». Примеры команд с разными методами адресации. 5.11 Инверсия. Команда инверсии. 5.12 Написать программу для решения задания, заданного преподавателем.
6. Введение в интегрированную отладочную среду ProView для микроконтроллеров семейства MCS-51, 251, XA
ProView фирмы Franklin Software Inc. – интегрированная среда разработки программного обеспечения для однокристальных микроконтроллеров семейства Intel 8051 и его клонов. Она включает в себя всё, что нужно для создания, редактирования, компиляции, трансляции, компоновки, загрузки и отладки программ: 1. стандартный интерфейс Windows, 2. полнофункциональный редактор исходных текстов с выделением синтаксических элементов цветом, 3. организатор проекта, 4. транслятор с языка C, 5. ассемблер, 6. отладчик, 7. встроенную справочную систему. Среда разработки подобна Visual C++ Microsoft и Borland C++ для Windows. Пользователи, знакомые с любым из этих изделий, будут чувствовать себя в ProView, как дома. Первый этап разработки программы – запись её исходного текста на каком-либо языке программирования. Затем производится компиляция или трансляция его в коды из системы команд микроконтроллера, используя транслятор или ассемблер. Трансляторы и ассемблеры – прикладные программы, которые интерпретируют текстовый файл, содержащий исходный текст программы, и создают объектные файлы, содержащие объектный код. После компоновки объектных модулей наступает этап отладки программы, устранения ошибок, оптимизации и тестирования программы. ProView объединяет все этапы разработки прикладной программы в единый рекурсивный процесс, когда в любой момент времени возможен быстрый возврат к любо му предыдущему этапу. ProView имеет следующие компоненты.
6.1.Оптимизирующий кросс-компилятор C51.
Язык C - универсальный язык программирования, который обеспечивает эффективность кода, элементы структурного программирования и имеет богатый набор операторов. Универсальность, отсутствие ограничений реализации делают язык C удобным и эффективным средством программирования для широкого разнообразия задач. Множество прикладных программ может быть написано легче и эффективнее на языке C, чем на других более специализированных языках. C51 - полная реализация стандарта ANSI (Американского национального института стандартов), насколько это возможно для архитектуры Intel 8051. C51 генерирует код для всего семейства микроконтроллеров Intel 8051. Транслятор сочетает гибкость программирования на языке C с эффективностью кода и быстродействием ассемблера. Использование языка высокого уровня C имеет следующие преимущества над программированием на ассемблере: 8. глубокого знания системы команд процессора не требуется, элементарное знание архитектуры Intel 8051 желательно, но не необходимо; 9. распределение регистров и способы адресации управляются полностью транслятором; 10. лучшая читаемость программы, используются ключевые слова и функции, которые более свойственны человеческой мысли; 11. время разработки программ и их отладки значительно короче в сравнении с программированием на ассемблере; 12. библиотечные файлы содержат много стандартных подпрограмм, которые могут быть включены в прикладную программу; 13. существующие программы могут многократно использоваться в новых программах, используя модульные методы программирования.
6.2. Макроассемблер A51.
Ассемблер A51 совместим с ASM51 Intel для всего семейства микроконтроллеров Intel 8051. Ассемблер транслирует символическую мнемонику в перемещаемый объектный код, имеющий высокое быстродействие и малый размер. Макросредства ускоряют разработку и экономят время, поскольку общие последовательности могут быть разработаны только один раз. Ассемблер поддерживает символический доступ ко всем элементам микроконтроллера и перестраивает конфигурацию для каждой разновидности Intel 8051. A51 транслирует исходный файл ассемблера в перемещаемый объектный модуль. При отладке или при включенной опции “Include debugging information” этот объектный файл будет содержать полную символическую информацию для отладчика/имитатора иливнутрисхемного эмулятора.
6.3.Компоновщик L51.
Компоновщик объединяет один или несколько объектных модулей в одну исполняемую программу. Компоновщик размещает внешние и общие ссылки, назначает абсолютные адреса перемещаемым сегментам программ. Он может обрабатывать объектные модули, созданные транслятором C51, ассемблером A51, транслятором PL/M-51 Intel и ассемблером ASM51 Intel. Компоновщик автоматически выбирает соответствующие библиотеки поддержки и связывает только требуемые модули из библиотек. Установки по умолчанию для L51 выбраны так, чтобы они подходили для большинства прикладных программ, но можно определить и заказные установки.
6.4.Отладчик/симулятор WinSim51.
Отладчик исходных текстов используется с транслятором C51, ассемблером A51, транслятором PL/M-51 Intel и ассемблером ASM51 Intel. Отладчик/симулятор позволяет моделировать большинство особенностей Intel 8051 без наличия аппаратных средств. Можно использовать его для проверки и отладки прикладной программы прежде, чем будут изготовлены аппаратные средства. При этом моделируется широкое разнообразие периферийных устройств, включая последовательный порт, внешний ввод - вывод и таймеры.
|