|
||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||
Меню:
Главная
Форум
Литература: Программирование и ремонт Импульсные блоки питания Неисправности и замена Радиоэлектронная аппаратура Микросхема в ТА Рубрикатор ТА Кабельные линии Обмотки и изоляция Радиоаппаратура Гибкие диски часть 2 часть 3 часть 4 часть 5 Ремонт компьютера часть 2 Аналитика: Монтаж Справочник Электроника Мощные высокочастотные транзисторы 200 микросхем Полупроводники ч.1 Часть 2 Алгоритмические проблемы 500 микросхем 500 микросхем Сортировка и поиск Монады Передача сигнала Электроника Прием сигнала Телевидиние Проектирование Эвм Оптимизация Автомобильная электроника Поляковтрансиверы Форт Тензодатчик Силовые полевые транзисторы Распределение частот Резисторные и термопарные Оберон Открытые системы шифрования Удк |
[40] X = N х 16 или N x ft 10. Программа имеет вид: LDY Д 00 LDA Д С08Е.Х ; включить режим чтения READ: LDA Д С08С,Х ; считать байт BRL READ; если D7 * 1 STATABL.Y: поместить байт в таблицу INY CPY # 03 BNE READ: считывание следующего байта RTS Режим записи включается выполнением любой операции процессора с ячейкой ввода-вывода: # COXF. Запись байта данных-возможна только через 100 мкс после включения режима записи. Чтобы записать один байт данных на ГМД, необходимо записать байт данных в регистр записи ( Д COXD) и выполнить любую операцию процессора с адресом GOXE. Записать байт данных на ГМД можно, например, так: LDA TABL STA Д COSD, X ; запись в регистр записи С RA д" C08F, х ; запись на ГМД из регистра записи После выполнения любой операции с адресом COXF значение регистра записи не меняется, т.е. одно и то же значение можно записывать последовательно на ГМД, не загружая его предварительно в регистр записи. При записи нескольких байтов программа должна обеспечивать интервал 32 мкс между обращениями к д C08F. Процесс записи четко ограничен во времени, и каждый байт должен быть записан за 32 мкс. Микропрограммный автомат фиксирует интервалы по 4 мкс каждый, за время которых записывается соответствующий бит (0 или 1). Рассмотрим, например, каким образом ДОС реализует операцию ЗАПИСЬ В ПОЛЕ АДРЕСА - ДАННЫХ. Программа, используемая ДОС, выполняется за 32 мкс (между обращениями к ячейке Д C08F):
Чтобы считать сигнал WRITE PROTECT, необходимо выполнить любую операцию процессора с адресом о C0XD и считать значение по адресу о СОХЕ. Если старший разряд считанного значения равен единице, то запись невозможна. Пример программы: LDA # C08D, X; X = N • 16 LDA УХ С08Е, X; считывание сигнала BMI WRERR ; запись невозможна На контроллере НГМД в ПЗУ записана специальная программа - драйвер. ПЗУ подключено к адресным шинам таким образом, что эта программа занимает адреса CN00 - CNFF, где N = 3 (номер разъема, в котором размещен контроллер). После включения компьютера управление передается на программу-загрузчик, (входящую в состав драйвера НГМД), которая осуществляет запись в память машины (начиная с адреса Ц 800) информации, считываемой с нулевого сектора нулевой дорожки магнитного диска (как правило, это программа загрузки ДОС). Драйвер записан в ПЗУ котроллера НГМД. ДОС, если она есть на ГМД, расположена на дорожках 0-2. Перед записью в память осуществляется перекодировка прочитанных с диска данных. В дальнейшем драйвер работает под управлением ДОС, выполняя макрокоманды записи-считывания полей АДРЕСА - ДАННЫХ. Распечатать программу-драйвер можно в мониторе с помощью команды L: • СЗОО LLLLLL. ОРГАНИЗАЦИЯ БАЗ ДАННЫХ Организация баз данных сводится к написанию программ, обеспечивающих хранение, пополнение и корректировку информации на ГМД. Такие программы не должны зависеть от типа и объема данных, т.е. должны составить стандартный набор (пакет). Рассмотрим возможности, которые предоставляет пользователю ДОС. для ведения баз данных. В состав ДОС входят операторы, работающие с текстовыми файлами. На рис. 6.12 приведена программа, создающая текстовый файл последовательной структуры и записывающая в него данные, вводимые непосредственно с клавиатуры. Оператор INPUT в строке 10 в начале работы программы выводит первый вопрос. В ответ с блока клавиатуры вводится последовательность символов - имя создаваемого файла. Следующий оператор INPUT в строке 20 запрашивает ввод данных с клавиатуры. Информация запоминается в символьной переменной А Д . Операторы в строках 30 и 40 создают текстовой файл с именем, указанным в переменной NAME Д , и переводят его в режим записи. Следующий оператор в строке 50 записывает содержимое переменной АД в созданный файл. На рис. 6.13 представлена программа, осуществляющая обратные действия: чтение данных из последовательного текстового файла. Первый оператор в строке 10 выводит звуковой сигнал, второй распечатывает на экране ВКУ каталог ГМД, вставленный (в данный момент) в накопитель. Файл с указанным именем открывается по чтению операторами в строке 30; чтение при этом начнется с первого байта данных. 5REM 7-ИМЯ ТЕКСТОВОГО ФАЙЛА 6REM ??-ЧТО ПИСАТЬ,ВВОД С КЛАВИАТУРЫ 10 INPUT NAMEn 20 INPUT An 30 PRINT CHRn(4);OPEN; NAMSn 4C PRINT CHRn(4) ; "WRITE" ; NAMSn 50 PRINT An 60 PRINT CHRn( 4) ; "CLOSE" ; NAMEn Рис. 6.12. Программа создания последовательного файла и запись в него Рис. 6.13. Программа информации дан -ных из последовательного файла 5 REM 7-ИМЯ ФАЙЛА 10PRINT CHRn(7) : PRINT CHRn (4); "CATALOG" 20INPUT NAMEn : PRINT 30PRINT CHRn(4); "OPEN" ;NAMEn :PRINT CHRn(4); " READ;NAMEn 40N=0 : ONERR GOTO 90 50GET An 60IF ASC(An)<32 THEN 80 70 PRINT " " ;An: : N=N+1 : GOTO 50 80 RIBBON=1 : PRINT •• " ; : RIBBON=7 : N=N+1 : GOTO 50 90 PRINT CHRn(7);PRINT CHRn(7) : CHRn(ASC(An)+64); : ****************• . PRINT * ***************** PRINT "EOF " ;N; " SYM. Оператор GET А Д в строке 50 считывает один символ, распечатываемый затем операторами в строке 70. Чтение осуществляется до тех пор, пока файл не иссякнет (второй оператор в строке 40). Для дальнейшего понимания излагаемого материала введем понятие записи. Запись - это совокупность данных, записываемая в файл одним оператором PRINT. В одной записи могут находиться несколько переменных (т.е. в один оператор PRINT можно включить любое число переменных). Признаком конца записи может служить код £~ (число 13). В программе предусмотрен поиск кода £~ (конца записи) и печать его на экране в виде красной буквы М. Отметим, что в операторе INPUT код клавиши £~ служит признаком конца читаемой записи, т.е. за одно обращение INPUT читает константы от начала очередной записи до конца £~ включительно. Примером использования этого оператора служит программа, приведенная на рис. 6.14. Особенность последовательного файла заключается в том, что записи создаются последовательно. Нельзя прочитать вторую запись, не прочитав первую, и т.д. Во всех рассмотренных выше программах оператор OPEN позиционирует головку чтения-записи на начало файла. Таким образом, чтобы записать в файл дополнительную информацию, необходимо повторить все предыдущие записи. Это неудобно, а иногда просто невозможно. Применение оператора APPEND дает возможность исключить лишние команды записи при дописывании информации в |
Среды: 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 | ||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||