|
||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[32] *{ (выражение)}L - вывод текста программы в мнемокоде системы команд, с заданного адреса или, если адрес не указан, продолжение распечатки; выводится 28 строк текста программы; *(выражение 2) • (выражение 2) Т - вывод текста в кодировке КОИ-7, в заданном интервале; *(выражение С) - выполнение программы в кодах системы команд, с заданного адреса; *{ (выражение I)}S - выполнение программы в кодах системы команд с адреса, определяемого выражением 1, до прерывания по адресу выражения 2. Если выражение 1 отсутствует, то начальным адресом считается адрес последнего прерывания. При пользовании директивой S следует учитывать: 1.Исходное включение памяти для отлаживаемой программы отличается от используемого интерпретатором следующим: модуль-эмулятор ПЗУ включается в состояние РСС= Д АО ( Д ЕО в интерпретаторе); модуль дополнительного ОЗУ включается в состояние РСС = $ 08 ( # 09 в интерпретаторе). В адресном пространстве отлаживаемой программы на этот момент имеется копия ДОС, соответствующая моменту начальной загрузки ДОС (адреса дополнительного ОЗУ), и интерпретатор языка БЕЙСИК с включенным основным банком Д DOOO - DFFF. Переключения банков памяти, выполняемые отлаживаемой программой, запоминаются (значения РСС хранятся по адресам Д Е8 - Д Е9) и повторяются при последующих исполнениях "S". 2.Содержимое ячеек Д 0... Д 3FF отлаживаемой программы хранится в адресах Д 8000... Д 83FF и не меняется при его работе. При каждом запуске директивы S с нового адреса происходит обратное перезаписывание из 8000... Д 83FFBfl 0...#3FF. 3.Содержимое регистров отлаживаемой программы запоминается в ячейках Д 45 - Д 49, адрес точки останова - в ячейках Д 0- )с( 1. 4.Содержимое текстового экрана отлаживаемой программы хранится по адресу Д 8400... Д 8BFF. Для его просмотра можно переписать эту зону памяти на адреса текущего экрана. Предусмотрено использование директивы S для отладки программ, размещенных на адресах ПЗУ. Такую программу следует загружать в массив 1 эмулятора ПЗУ и во время работы следить за сохранностью интерпретатора языка БЕЙСИК, размещенного в массиве 0 эмулятора ПЗУ. ДОПОЛНИТЕЛЬНЫЕ ВОЗМОЖНОСТИ ЯЗЫКА БЕЙСИК При разработке программного обеспечения на языке БЕЙСИК могут оказываться полезными следующие сведения: 1. При желании для вывода текста на экран ВКУ можно использовать не весь экран, а текстовое окно, которое следует задать. В ячейке памяти 32 лежит левая граница текстового окна, а в ячейке 33 - ширина (в цветном текстовом режиме 32x32 хранятся удвоенные значения, нечетные границы недопустимы). Директивамии POKE 33, А и РОКЕ 32, В можно задавать горизонтальные размеры текстового окна; при этом А должно находиться в диапазоне 1 - 64, а В - в диапазоне 0-63. Другие значения могут привести к непредсказуемым последствиям. В ячейках 34 и 35 лежат соответственно верхняя и нижняя границы текстового окна. Директивами ГОКЕ 34, С и РОКЕ 35, D можно задавать вертикальные размеры текстового окна. Переменные С и D должны находиться соответственно в диапазонах 0 - 31 и 1 - 32; при этом D должно быть больше С. 2.Чтобы очистить текстовое окно от символов, можно кроме команды НОМЕ, использовать директиву PRINT CHR (12). Выполнение директивы PRINT CHR (30) очистит текстовое окно от символов начиная с позиции курсора и до конца текстового окна. Директива PRINT CHR (31) очищает строки от символов начиная с позиции курсора и кончая правой границей текстового окна. Одновременное нажатие клавиш УПР и F или выполнение директивы PRINT CHR # (7) вызывает появление звукового сигнала. Можно использовать и другие подпрограммы "Системного монитора", вызывая их с помощью операторов CALL или USR. 3.Переключать страницы памяти можно непосредственно в программах с помощью команд РОКЕ - 14592+KR+NS*Q, 0. Примечания: а)KR - код режима работы: О-в режиме GR, 1 - в режиме MGR, 2 - в текстовом режиме, 3 - в режиме HGR; б)NS - номер страницы памяти. NS » 1 + 63 в режимах GR и текстовом, NS= 1 + 5 в режимах MGR. NGR. Номера текстовых страниц с 1 до 31 соответствуют АЦР-32, с 33 до 63 -АЦР-64: в)Q-4 в режимах GR и текстовом, Q-16 в режимах MGR и NGR. 4.Интерпретатор языка БЕЙСИК имеет четыре оператора, позволяющие манипулировать графическими объектами в режиме высокоразрешающей графики. Это операторы DRAW, XDRAW, ROT, SCALE. Однако, прежде чем эти операторы могут быть использованы, графический объект должен быть описан посредством описателя формы, который состоит из последовательности закодированных векторов, определяющих форму объекта. Один или несколько таких описателей вместе с указателями составляют таблицу образов. Коды этой таблицы могут быть набраны с клавиатуры и записаны на магнитной ленте или магнитном диске для последующего использования. Каждый байт описателя формы разделен на три секции, каждая из которых описывает вектор, указывающий направление движения воображаемого "пера", рисующего объект. По команде DRAW или XDRAW интерпретатор просматривает секцию за секцией описателя. Когда встречается байт, все биты которого нули, просмотр описателя заканчивается. Структура одного байта описателя формы, состоящего из трех секций А, В, С: СВА Номер бита................. 76543210 Обозначения битов.......... DDPDDPDD 4* 99 Каждая пара битов, обозначенная DD, определяет направление движения "пера", а каждый бит Р указывает, чертить или не чертить точку, прежде чем "перу" сместиться в указанном направлении. Если DD=00, "перо" сместится вверх, DD=01 - вправо, DD=10 - вниз, DD=11 -влево. Р=0 вызывает смещение без черчения, а Р=1 - смещение с черчением точки. Секция С (два старших бита) не содержит поля Р. Считается, что в этой секции Р=0, т.е. в ней можно указывать только смещение без черчения. Таким образом, каждый байт описывает до трех векторов, по одному в секциях А. В и С. Команды DRAW И XDRAW обрабатывают секции справа налево (вначале секцию А, затем В, далее С). Если секции, оставшиеся до конца байта, содержат - одни нули, они игнорируются. Например, байт описателя не может заканчиваться секцией С равно 00 (движение вверх без черчения), так как эта секция, содержащая одни нули, будет игнорирована. Аналогично, если секция С содержит 00, секция В не может быть равной ООО, так как она тоже будет пропущена. И ООО в секции А прервет описатель, если в секциях В и С нет ни одного бита, равного 1. Предположим, нужно изобразить объект, показанный на рис. 5.5, а. Вначале нанесем его на клетчатую бумагу так, чтобы каждая точка занимала одну клетку (рис. 5.5, б). Затем выберем начальную точку. Пусть она находится в центре фигуры. Теперь нарисуем путь воображаемого "пера" через точки нашего объекта, используя только повороты на 90 (рис. 5.5, в). Развернем эту последовательность векторов и расположим их в том порядке, в каком "перо" проходит через точки объекта. Последовательно записываем для каждого вектора его двоичный код в свободную секцию табл. 5.3. Если код не подходит (например, вектор в секции С не может чертить точку) или равен 00 (000) в конце байта, пропускаем эту секцию и переходим к следующей. Преобразуем последовательность нулей и единиц значения вектора описателя в шестнадцатеричный формат (5.3): 12 3F 20 64 2D 15 36 IE 07 00 •• • •• • а) S) Эта последовательность байтов теперь должна быть загружена в память компьютера. в) Рис. 5.5. Формирование образа |
Среды: Smalltalk80 MicroCap Local bus Bios Pci 12С ML Микроконтроллеры: Atmel Intel Holtek AVR MSP430 Microchip Книги: Емкостный датчик 500 схем для радиолюбителей часть 2 (4) Структура компьютерных программ Автоматическая коммутация Кондиционирование и вентиляция Ошибки при монтаже Схемы звуковоспроизведения Дроссели для питания Блоки питания Детекторы перемещения Теория электропривода Адаптивное управление Измерение параметров Печатная плата pcad pcb Физика цвета Управлении софтверными проектами Математический аппарат Битовые строки Микроконтроллер nios Команды управления выполнением программы Перехода от ahdl к vhdl Холодный спай Усилители hi-fi Электронные часы Сердечники из распылённого железа Анализ алгоритмов 8-разрядные КМОП Классификация МПК История Устройства автоматики Системы и сети Частотность Справочник микросхем Вторичного электропитания Типы видеомониторов Радиобиблиотека Электронные системы Бесконтекстный язык Управление техническими системами Монтаж печатных плат Работа с коммуникациями Создание библиотечного компонента Нейрокомпьютерная техника Parser Пи-регулятор ч.1 ПИ-регулятор ч.2 Обработка списков Интегральные схемы Шина ISAВ Шина PCI Прикладная криптография Нетематическое: Взрывной автогидролиз Нечеткая логика Бытовые установки (укр) Автоматизация проектирования Сбор и защита Дискретная математика Kb радиостанция Энергетика Ретро: Прием в автомобиле Управление шаговым двигателем Магнитная запись Ремонт микроволновки Дискретные системы часть 2 | ||