ВУЗ:
Составители:
6
В рассматриваемо программе сегмент стека содержит один эле-
мент
dw 16 dup(?), с помощью которого формируется стек
размером в 16 машинных слов. В данном случае стек используется
в программе для обеспечения корректного завершения программы с
передачей управления операционной системе ПЭВМ.
Сегмент данных состоит из шести псевдооператоров
dw, из ко-
торых первые четыре определяют исходные данные, а два послед-
них – резервируют место для результатов.
В составе кодового сегмента можно выделить несколько функ-
циональных групп операторов. В тексте программы они разделены
строками комментария. Директива assume обеспечивает
“привязку” сегментов к конкретным сегментным регистрам. Сле-
дующие три оператора позволяют сохранить текущее содержимое
сегментного регистра данных в стеке, а два других – настроить сег-
ментный регистр на работу с сегментном данных нашей програм-
мы. Четвертая группа, состоящая из четырех арифметических опе-
раторов, реализует вычисления, заданные формулой
dcbay /)( +
=
.
Далее следуют два оператора
mov, необходимые для сохранения
полученных результатов в памяти. Наконец, последний “исполняе-
мый” оператор программы
ret обеспечивает возврат управления
операционной системе.
Содержимое кодового сегмента оформлено в виде процедуры
(подпрограммы). Это сделано с помощью двух специальных псев-
дооператоров, форматы которых выглядят так:
“<имя-процедуры>
proc <операнд>” - заголовок процедуры,
“<имя-процедуры>
endp ” - конец текста процедуры.
Текс программы завершается оператором
end, который в каче-
стве операнда содержит имя “точки входа” в программу.
В приложении содержится ещё один пример программы, который
фактически является существенно усовершенствованным и услож-
нённым вариантом рассмотренной выше программы.
В рассматриваемо программе сегмент стека содержит один эле-
мент dw 16 dup(?), с помощью которого формируется стек
размером в 16 машинных слов. В данном случае стек используется
в программе для обеспечения корректного завершения программы с
передачей управления операционной системе ПЭВМ.
Сегмент данных состоит из шести псевдооператоров dw, из ко-
торых первые четыре определяют исходные данные, а два послед-
них – резервируют место для результатов.
В составе кодового сегмента можно выделить несколько функ-
циональных групп операторов. В тексте программы они разделены
строками комментария. Директива assume обеспечивает
“привязку” сегментов к конкретным сегментным регистрам. Сле-
дующие три оператора позволяют сохранить текущее содержимое
сегментного регистра данных в стеке, а два других – настроить сег-
ментный регистр на работу с сегментном данных нашей програм-
мы. Четвертая группа, состоящая из четырех арифметических опе-
раторов, реализует вычисления, заданные формулой y = (a + b)c/d .
Далее следуют два оператора mov, необходимые для сохранения
полученных результатов в памяти. Наконец, последний “исполняе-
мый” оператор программы ret обеспечивает возврат управления
операционной системе.
Содержимое кодового сегмента оформлено в виде процедуры
(подпрограммы). Это сделано с помощью двух специальных псев-
дооператоров, форматы которых выглядят так:
“<имя-процедуры> proc <операнд>” - заголовок процедуры,
“<имя-процедуры> endp ” - конец текста процедуры.
Текс программы завершается оператором end, который в каче-
стве операнда содержит имя “точки входа” в программу.
В приложении содержится ещё один пример программы, который
фактически является существенно усовершенствованным и услож-
нённым вариантом рассмотренной выше программы.
6
Страницы
- « первая
- ‹ предыдущая
- …
- 5
- 6
- 7
- 8
- 9
- …
- следующая ›
- последняя »
