АвтоАвтоматизацияАрхитектураАстрономияАудитБиологияБухгалтерияВоенное делоГенетикаГеографияГеологияГосударствоДомДругоеЖурналистика и СМИИзобретательствоИностранные языкиИнформатикаИскусствоИсторияКомпьютерыКулинарияКультураЛексикологияЛитератураЛогикаМаркетингМатематикаМашиностроениеМедицинаМенеджментМеталлы и СваркаМеханикаМузыкаНаселениеОбразованиеОхрана безопасности жизниОхрана ТрудаПедагогикаПолитикаПравоПриборостроениеПрограммированиеПроизводствоПромышленностьПсихологияРадиоРегилияСвязьСоциологияСпортСтандартизацияСтроительствоТехнологииТорговляТуризмФизикаФизиологияФилософияФинансыХимияХозяйствоЦеннообразованиеЧерчениеЭкологияЭконометрикаЭкономикаЭлектроникаЮриспунденкция

ЛАБОРАТОРНЫЕ РАБОТЫ

Читайте также:
  1. B) суммарное количество выполненной работы
  2. I. Общие работы по теории культуры
  3. I. Организация выполнения выпускной квалификационной работы
  4. II. Организация работы Комиссии по повышению квалификации и в целом всей деятельности по повышению квалификации
  5. II. ПЕРЕЧЕНЬ ЗАДАНИЙ ДЛЯ ВЫПОЛНЕНИЯ РАБОТЫ
  6. II. Порядок подготовки, защиты и оценки квалификационной работы
  7. II. Работы учеников Уильяма Джеймса: Дж. Дьюи, С. Холла, Дж. Кэттела, Э. Торндайка
  8. II. Рекомендации по оформлению контрольной работы.
  9. II. Требования охраны труда перед началом работы.
  10. II. Требования охраны труда перед началом работы.
  11. II. Требования охраны труда перед началом работы.
  12. III. Задания для самостоятельной работы по изучаемой теме

Лабораторная работа № 1

”Исследование процесса вывода текстовой информации из памяти ПЭВМ” на экран монитора”.

Задание № 1

Набрать приведённый выше текст программы, заменив в нем выводимое сообщение ’ASSEMBLER’ на предложение ’Я изучаю ассемблер’, составленное на английском языке, получить исполняемый файл с расширением exe, запустить его и посмотреть результат работы программы, то есть выполнить практически все выше рассмотренные этапы разработки и исполнения ассемблерной программы.

 

Задание № 2

Так как результат работы выполненной программы мгновенно исчезает с экрана монитора и его можно наблюдать только после нажатия клавиш Ctrl – o, в предыдущую программу перед выполнением команд:

 

Mov ax,4c00h

Int 21h

 

необходимо ввести временную задержку для устранения этого недостатка.

Временную задержку можно организовать на основе использования регистров блока РОН. Например, в какой-то регистр загружается определённое число. Затем из содержимого этого регистра вычитается единица и проверяется его содержимое на ноль. Если его содержимое не равно нулю, то опять вычитается единица и т. д., пока в этом регистре не окажется ноль. Таким образом, на время вычитания единицы и будет происходить временная задержка в дальнейшем выполнении программы, то есть в её завершении и выходе в операционную систему DOS. Для вычитания единицы из содержимого регистра используется команда dec имя регистра, а для прибавления единицы – inc имя регистра, например:

 

Dec bx

Inc si

 

Проверку содержимого регистра на ноль осуществляют, используя так называемый z – бит, который устанавливается в единицу при нулевом содержимом регистра после выполнения некоторых операций, в частности команды dec. Для этого могут использоваться две команды условных переходов:

Jz метка

Или

Jnz метка

 

Первая команда обеспечивает переход на метку при нулевом содержимом регистра, то есть при z=1, а вторая – при z=0, когда содержимое регистра не равно нулю. Для автоматической организации операции вычитания, проверки содержимого на ноль и условного перехода по нулю (либо не по нулю) в рассматриваемых микропроцессорах используются регистр cx, который предварительно загружается определённой константой. После этого в программе могут использоваться команды:

Loop метка

Loopz метка

Loopnz метка

Первая команда обеспечивает переход при нулевом содержимом регистра cx, вторая – при (cx)=0 и z=1, третья – при (cx)≠0 и z=0.

Таким образом, с учётом изложенного выше, сформируйте задержку в исходной программе перед её выходом в DOS. Вначале используйте только регистр cx. Если задержка окажется недостаточной, то используйте дополнительный регистр из блока РОН, например bx, и команды dec и jnz,то есть организуйте цикл в цикле.

 

Контрольные вопросы

1.Из каких основных частей состоит ВМ86?

2.Какие сегментные регистры входят в состав ВМ86 и какие функции они выполняют?

3.Какие индексные регистры входят в состав ВМ86 и какие функции они выполняют?

4.Какие регистры общего назначения входят в состав ВМ86 и какие функции они выполняют?

5.Какие флажки состояния ВМ86 входят в состав регистра флагов?

6.Для чего нужны команды передачи данных?

7.Какие способы адресации данных существуют?

8.Как работает команда MOV и какие ограничения на ее применение существуют?

9.Из каких частей состоит ассемблерная программа, которая использует малую модель памяти? Каким оператором начинается сегмент данных в ассемблерной программе, которая использует малую модель памяти?


1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 |

Поиск по сайту:



Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Студалл.Орг (0.003 сек.)