Главная » Просмотр файлов » Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002)

Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248), страница 70

Файл №1186248 Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (Бройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002)) 70 страницаБройдо В.Л. Вычислительные системы, сети и телекоммуникации (2002) (1186248) страница 702020-08-27СтудИзба
Просмтор этого файла доступен только зарегистрированным пользователям. Но у нас супер быстрая регистрация: достаточно только электронной почты!

Текст из файла (страница 70)

После директивы Аввоше следует явным образом загрузить адрес начала сегмента данных в регистр 05: шоч АК. батдяед шоч 05. АК гВВ Глава9. Прог аммноеуп авлвнив — основа автоматизации Подобная же инициализация сегментных регистров С5 и 55 выполняется автоматически (гш умолчанию). Процедура определяется псевдооператорами: иия проц ргос [Гаг]..

гео иия прап епср При определении процедуры после ргос должен быть указан атрибут дистанции пеаг или гаг; если этого атрибута нет, то по умолчанию подразумевается пеаг, Обычно процедура должна заканчиваться командой гес (геснгп), то есть процедура является подпрограммой, Если процедура пеаг, то обращение к ней (са] ] ) из того же сегмента; если ргос 1а г, то из любого сегмента (в этом случае командой гес из стека при возврате будет извлечено два слова: для 1Р и для С5). Директивы управления трансляцией Их несколько, наиболее часто используется ЕН0.

ЕНВ отмечает конец программы и указывает ассемблеру, где завершить трансляцию. Формат процедуры: ЕИО [иия програиия] Краткие сведения о программировании процедур работы с устройствами ввода-вывода Процедуры ввода-вывода в ПК выполняются, как правило, по прерываниям. Состав и использование основных видов прерываний и служебных функций 1)05 прерывания 21Н рассмотрены в работах [10, 35). Ниже мы кратко остановимся на вопросах программирования ввода-вывода лишь прерываний для отображения информации на дисплее, ввода с клавиатуры, вывода на принтер и работы с файлами. Программирование работы с дисплеем Задание режимов работы и обмен данными с дисплеем можно выполнять при прерываниях В105 тип 10Н, а вывод данных на дисплей и при прерываниях 1)05 тип 21Н.

Лля уяснения отличий прерываний В105 от прерываний Е)05 рассмотрим в качестве примера несколько функций видеопрерываний В!05. Видеооперации с прерыванием 1ОН В108 Это прерывание обеспечивает выполнение 16 различных процедур работы с дисплеем (идснтифицируготся содержимым регистра АН). Приведем самые важные из ннх.

1. Перемещение курсора в заданную позицию: АН=2. Координаты курсора (строка, столбец) предварительно засылаются соответственно в регистры 1)Н, 01. В регистре ВН указывается номер страницы буфера: по умолчанию и в графическом режиме ВН=В. 2. Очистка экрана дисплея: ЯНе6 и АЕ=0, или АН=7 и ЯЕ=О. 299 Элементы программирования на языке ассемблер 3. Чтение символа, находящегося в текушей позиции курсора, и его атрибута: АН=В. В регистре ВН указываются номер страницы буфера (для текстовых режимов). Считанный символ возвращается в А1., а его атрибут — в АН (атрибут символа — это его характеристики: цвет, цвет фона, яркость, инвертирование, подчеркивание, мигание и т.

д.). 4. Залание режима изображения (текстовый, графический, цветность, формат, разрешающая способность и т. и.): АН=О. Режим изображения опрелеляется солержимым регистра А1.. 5. Запись нового атрибута символа и вывод символа в текусцую позицию курсора: АН 9. Прочие регистры должны содержать; О АŠ— записываемый символ; О ВŠ— его атрибут; О ВН вЂ” страницу буфера; О СХ вЂ” счетчик записываемых символов (число повторений символа). 6.

Вывод символа в текущую позицито курсора: АН-АН или АН=9 и ВС=О. Содержимое А1., ВН и СХ аналогично п. 5. 7. Чтение текущего видеостатуса: АНе ЕН. Возврашает в: АС вЂ” текутций режим; АН— число столбцов на экране; ВН вЂ” активную страницу буфера. В. Вывод строки символов: АН=13Н и АС=О. Прочие регистры должны содержать: О Е5:ВР— указатель строки (ее начальный адрес в памяти); О СХ вЂ” длину строки; О ОХ вЂ” строку дисплея; О ВН вЂ” страницу буфера. Видеооперации с прерыванием 21Н ООВ 1. Вывод символа на экран дисплея: АН-2 или АН=б и ОС<»ЕЕН.

В регистре 1)(.должен быть АЗСП-код символа. Пример фрагмента программы (вывод символа «С»); воч АН, б воч ОС, 43Н ; 43Н вЂ” это А5С1! код символа <С» тпс 21Н 2. Вывод строки символов: АН-9 (чаше всего используемая функция). В регистрах 05: ОХ должен быть начальный адрес строки символов, которая должна заканчиваться символом 5.

Пример фрагмента программы (вывод строки 'вывод строки сымволовэ ): Техт ОЬ 'вывод строки сииволовд' еоч ЯН, 9 люч ОХ, оттвеС Се»С : оттвеС техт — это адрес , выводииой строки !пС 21Н 3. Вывод на экран текстового файла: АН=4ОН. Стандартные файловые указатели определяют тип и устройство ввода-вывола: О 0 Вводе клавиатуры; О 1 Вывод на экран дисплея; зоо Глава 9. П ог аммнов и авление — основаавтоматизации 01 2 Вывод на экран сообщения об ошибке; 3 Ввод-вывод на внешнее устройство; сз 4 Вывод на печать. Для ввода используется функция ЯН=ЗЕН прерывания 21Н, для вывода используется функция АН=40Н прерывания 21Н. В регистр СХ предварительно заносится число вводимых-выводимых байтов, а в регистр РХ записывается начальный адрес поля памяти для ввода-вывода.

В случае успешного завершения процедуры ввода-вывола обнуляется флаг переноса СР, а в регистр АХ возвращается количество фактически переданных байтов. При неудачной операции флаг СР устанавливается в 1, а в регистр АХ заносится код ошибки. Приведенный ниже пример содержит фрагмент программы для вывода на экран текстового файла Тех1, солержащего 50 байт. техт бр 50 боры П ч ЯН, 40Н еоч ВХ. 1 ;указание устройства вывода воч СХ. 50 ,указание числа выводииых байт ыоч рх.

оттает техт .указание начального адреса :поля памяти содержащего текст тпт 21Н Программирование работы с клавиатурой При программировании работы с клавиатурой могут быть использованы преры- вания16Н 8105ипрерывания 21Н(АН= 1, 6. 7, В. А. В. С) Р05. Прерывание 16Н 8105 предусматривает достаточно простые операции обмена данными с клавиатурой, полезные при написании программ, выполняемых независимо от операционной системы РОЯ. Так, при АН=О и 1 считываются из буфера клавиатуры всап-кол клавиш в регистр ЯН и АГАСИ-код клавиш в регистр АС; при ЯН=2 в АС возвращается байт состояния клавиатуры — состояние управляющих клавиш: 5ЫЙ, Стт(, А11, 5сгой Соси, Нцсп Соси и1пвет1; при АН=З вЂ” устанавливаются режимы работы клавиатуры в 1ВМ РС)г.

Ввод с клавиатуры по прерыванию 21Н РОВ предполагает: 1. Чтение символа с клавиатуры (с ожиланием ввода) и отображением символа на экране дисплея: АН=1 или ЯН=6 и О 5=0 ГЕН; то же, но без отображения символа на экране дисплея; АН-7 или АН-8. Считанный символ (АВСП-код) — в регистре А1., (зсап-код не формируется). Если к моменту запроса на чтение символа клавиша еще не нажата, то управление прерванной программе не будет возвращено до тех пор, пока клавиша не будет нажата. Если код клавиши расширенный (клавиши Е1 — Е10, А11, СИ и т.д.), то необходимо повторное чтение. Пример фрагмента программы чтения символа: яоч ЯН, 1 тпт 21Н 2. Чтение строки символов с буферизацией: АН-ОАН. Для инициализации такого чтения необхолимо: а задать буфер, указав в нем число символов строки, подлежащих вводу, директивой; Ьыу ОВ п,0, 0.....О.

0 (Ьыу — имя поля, которое, в принципе, может зо1 Элементы программирования на языке ассемблер пюч АН. ЗГН яюч ВХ, 0 яюч ОХ, 50 воч Ох, оггзеь техт указание устройства ввода :указание кисла вводиких байтов ;указание началвного адреса ,пола паияти дпя ввода тпт 21Н Программирование работы с принтерами При работе с печатагощими устройствами могут бьгть использованы прерывания: 14Н и 17Н 8105 и 21Н (АН-4 и 5) 005. Следует различать программирование для печатающих устройств параллельного типа (информация передается на принтер побайтно по 8-битной шине) и печатающих устройств последовательного типа (инфор- быть и любым другим); количество нулей в директиве должно быть на два больше, чем п (и — максимальное количество вводимых символов), на место следующего «О» будет после ввода записано количество фактически введенных символов, на место последующих «О» будут введены АВСП-коды символов строки и еще один «О» для кода клавиши БО1ег — 13; 00 занести в регистр 05; 0Х адрес буфера.

При выполнении рассматриваемого прерывания управление прерванной (основной) программе возвращено не будет до тех пор, пока не нажаты все клавиши и клавиша 8птег. При нажатии каждой очередной клавиши ее кодзаписывается в буфер клавиатуры и отображается на дисплее, но из буфера поступит в основную программу (в поле Ьпу) только после нажатия клавиши Блгег. Если до Бп(ег клавиш нажато больше, чем указано в буфере, то раздастся звонок и лишние символы восприняты не будут. Пример фрагмента программы чтения строки символов: ЬЛ ОВ 9 .О .О .0 .0,0 .0 .0 .0 .0 .0 0 Яоч АН. ОАН иоч ОХ, оусзег Ьот тпт 21Н В поле буфера будут записаны АВСП-коды символов строки, и если в программе предусмотрены операции над двоичными кодами символов (цифр) строки, то необходимо преобразовать АВСП-коды в двоичный код числа, используя, например, процедуру 518281Н.

3. Чтение состояния клавиатуры: АН=ОВН. В регистр АЬ записывается О, если буфер клавиатуры имеет хотя бы один символ. 4. Очистка буфера клавиатуры и вызов функции: АН=ОСН. Обнуляется буфер клавиатуры и инициируется выполнение одной из 5 функций прерывания 21Н; в этом случае номер вызываемой функции должен быть записан не в регистре АН, а в регистре А! (АЬ=1.б.7. 8 или ОА). 5. Ввод с клавиатуры текстового файла: Аныйгн. Используются функции расширенного управления файлами М5-РО5 по файловому указателю.

Пример фрагмента программы для ввода с клавиатуры текстового файла Теис, содержащего 50 байт: техт ОЬ 50 дорГ' Ч ,задание поля паняти для ввода 302 Глава 9. П ог аммное управление — основа автоматизации мация передается по одному проводу последовательно по одному биту), подсое- диияемых к любому последовательному порту микропроцессора. Печатающие устройства параллельного типа Осиовиые прерывания для печатающего устроиства параллельного типа: (3 17Н В!05 (помер принтера цредварительио указывается в регистре РХ): ° послать один символ в устройство печати: АН=0.

Характеристики

Список файлов книги

Свежие статьи
Популярно сейчас
Как Вы думаете, сколько людей до Вас делали точно такое же задание? 99% студентов выполняют точно такие же задания, как и их предшественники год назад. Найдите нужный учебный материал на СтудИзбе!
Ответы на популярные вопросы
Да! Наши авторы собирают и выкладывают те работы, которые сдаются в Вашем учебном заведении ежегодно и уже проверены преподавателями.
Да! У нас любой человек может выложить любую учебную работу и зарабатывать на её продажах! Но каждый учебный материал публикуется только после тщательной проверки администрацией.
Вернём деньги! А если быть более точными, то автору даётся немного времени на исправление, а если не исправит или выйдет время, то вернём деньги в полном объёме!
Да! На равне с готовыми студенческими работами у нас продаются услуги. Цены на услуги видны сразу, то есть Вам нужно только указать параметры и сразу можно оплачивать.
Отзывы студентов
Ставлю 10/10
Все нравится, очень удобный сайт, помогает в учебе. Кроме этого, можно заработать самому, выставляя готовые учебные материалы на продажу здесь. Рейтинги и отзывы на преподавателей очень помогают сориентироваться в начале нового семестра. Спасибо за такую функцию. Ставлю максимальную оценку.
Лучшая платформа для успешной сдачи сессии
Познакомился со СтудИзбой благодаря своему другу, очень нравится интерфейс, количество доступных файлов, цена, в общем, все прекрасно. Даже сам продаю какие-то свои работы.
Студизба ван лав ❤
Очень офигенный сайт для студентов. Много полезных учебных материалов. Пользуюсь студизбой с октября 2021 года. Серьёзных нареканий нет. Хотелось бы, что бы ввели подписочную модель и сделали материалы дешевле 300 рублей в рамках подписки бесплатными.
Отличный сайт
Лично меня всё устраивает - и покупка, и продажа; и цены, и возможность предпросмотра куска файла, и обилие бесплатных файлов (в подборках по авторам, читай, ВУЗам и факультетам). Есть определённые баги, но всё решаемо, да и администраторы реагируют в течение суток.
Маленький отзыв о большом помощнике!
Студизба спасает в те моменты, когда сроки горят, а работ накопилось достаточно. Довольно удобный сайт с простой навигацией и огромным количеством материалов.
Студ. Изба как крупнейший сборник работ для студентов
Тут дофига бывает всего полезного. Печально, что бывают предметы по которым даже одного бесплатного решения нет, но это скорее вопрос к студентам. В остальном всё здорово.
Спасательный островок
Если уже не успеваешь разобраться или застрял на каком-то задание поможет тебе быстро и недорого решить твою проблему.
Всё и так отлично
Всё очень удобно. Особенно круто, что есть система бонусов и можно выводить остатки денег. Очень много качественных бесплатных файлов.
Отзыв о системе "Студизба"
Отличная платформа для распространения работ, востребованных студентами. Хорошо налаженная и качественная работа сайта, огромная база заданий и аудитория.
Отличный помощник
Отличный сайт с кучей полезных файлов, позволяющий найти много методичек / учебников / отзывов о вузах и преподователях.
Отлично помогает студентам в любой момент для решения трудных и незамедлительных задач
Хотелось бы больше конкретной информации о преподавателях. А так в принципе хороший сайт, всегда им пользуюсь и ни разу не было желания прекратить. Хороший сайт для помощи студентам, удобный и приятный интерфейс. Из недостатков можно выделить только отсутствия небольшого количества файлов.
Спасибо за шикарный сайт
Великолепный сайт на котором студент за не большие деньги может найти помощь с дз, проектами курсовыми, лабораторными, а также узнать отзывы на преподавателей и бесплатно скачать пособия.
Популярные преподаватели
Добавляйте материалы
и зарабатывайте!
Продажи идут автоматически
6418
Авторов
на СтудИзбе
307
Средний доход
с одного платного файла
Обучение Подробнее