Общие условия выбора системы дренажа: Система дренажа выбирается в зависимости от характера защищаемого...
Индивидуальные и групповые автопоилки: для животных. Схемы и конструкции...
Топ:
История развития методов оптимизации: теорема Куна-Таккера, метод Лагранжа, роль выпуклости в оптимизации...
Отражение на счетах бухгалтерского учета процесса приобретения: Процесс заготовления представляет систему экономических событий, включающих приобретение организацией у поставщиков сырья...
Процедура выполнения команд. Рабочий цикл процессора: Функционирование процессора в основном состоит из повторяющихся рабочих циклов, каждый из которых соответствует...
Интересное:
Искусственное повышение поверхности территории: Варианты искусственного повышения поверхности территории необходимо выбирать на основе анализа следующих характеристик защищаемой территории...
Что нужно делать при лейкемии: Прежде всего, необходимо выяснить, не страдаете ли вы каким-либо душевным недугом...
Инженерная защита территорий, зданий и сооружений от опасных геологических процессов: Изучение оползневых явлений, оценка устойчивости склонов и проектирование противооползневых сооружений — актуальнейшие задачи, стоящие перед отечественными...
Дисциплины:
|
из
5.00
|
Заказать работу |
Содержание книги
Поиск на нашем сайте
|
|
|
|
Общий формат команды Ассемблера
[Метка:] Код_операции [Операнд1 [,Операнд2] ] [;Комментарий ]
Адреса памяти в командах м.б. записаны так:
· А
· А[М]
· А[М1] [М2]
Где А – адрес, М – регистр ВХ, ВР, M2 - регистр SI или DI. В случае 2 и 3 компонента А может отсутствовать (т.е. А=0).
Примеры:
Mov Ax, Si
Mov Bh, 5
Mov Di, Size X
Mov X, Ah
Mov X[Bx][Di], 5
Mov [Bx], Cl
Mov Ah, 5
Mov Ax, 5
Mov [Bx], 300
Mov Ds, Ax
Mov Cx, Bh
Mov Dl, 300
Mov [Bx], 5 - Не Определён Тип Операнда
Mov Byte Ptr [Bx], 5
Mov Word Ptr [Bx], 5
X Dw 999
Mov Ah, X
Mov Ah, Byte Ptr X
Mov Ax, 80h
Mov Ax, -128;0ff80h
Mov Ax, 128;0080h
Mov Ax, 80h;0080h
Структура простейшего программного модуля. Сегментирование
Модуль программы на языке ассемблера состоит из сегментов следующих типов:
- сегмент кода
- сегмент данных
- сегмент стека
- расширенный сегмент
Assume CS: Code, DS: Data
Code SEGMENT
org 100h
Start: …;точка входа в программу
Code ENDS
Data Segment
….
Data ENDS
END Start
Dt1 Segment
A Db 0
B Dw?
Dt1 Ends
;
Dt2 Segment
C Db ‘Hallo’
Dt2 Ends
;
Code Segment
Assume Cs:Code, Ds:Dt1, Es:Dt2
Beg: Mov Ax, Dt2
Mov Ds,Ax
Mov Bh, C
…
Code Ends
End Beg
В простейшей программе может быть всего один сегмент - кодовый, тогда необходимо в директиве Assume указать его использование и для адресации данных, а также загрузить в регистр ds его фактический адрес.
Assume CS: Code, DS: Code
Code SEGMENT
org 100h
Start: mov ax,cs
mov ds,ax
…
Функции BIOS
Функции BIOS – это функции, вызываемые по команде INT с номерами в диапазоне от 0 до 20h для обработки различных событий в ЭВМ. Детализация вызываемого сервиса обычно вводится в регистре АН.
Int 10H: Видео сервис
Ниже приведен перечень функций видеосервиса, предоставляемых подпрограммами BIOS. Номер функции определяется значением регистра ah при вызове int 10.
| Функция | |
| 00h | Установить видеорежим |
| 01h | Установить размер и форму курсора |
| 02h | Установить позицию курсора |
| 03h | Читать позицию курсора |
| 04h | Читать световое перо |
| 05h | Выбрать активную страницу дисплея |
| 06h | Скроллинг окна вверх (или очистка его) |
| 07h | Скроллинг окна вниз (или очистка его) |
| 08h | Читать символ/атрибут |
| 09h | Вывести символ/атрибут |
| 0ah | Вывести символ |
| 0bh | Выбрать палитру/цвет рамки |
| 0ch | Вывести графическую точку |
| 0dh | Читать графическую точку |
| 0fh | Вывести символ в режиме TTY |
| 10h | Читать видео режим |
Здесь детализированы функции INT 10H стандартного видеосервиса ROM-BIOS.
AH = 00H Установка видеорежима.
Вход: AL = видеорежим
| AL | Тип | Формат | Цветов |
| текст | 40 х 25 | 16/8 | |
| текст | 40 х 25 | 16/8 | |
| текст | 80 х 25 | 16/8 | |
| текст | 80 х 25 | 16/8 | |
| графика | 320 х 200 | ||
| графика | 320 х 200 | ||
| графика | 640 х 200 | ||
| текст | 80 х 25 | ||
| 0dh | графика | 320 х 200 | |
| 0eh | графика | 640 х 200 | |
| 0fh | графика | 640 х 350 |
Функции OS
Функции OS - это функции, выполняемые при вызове прерывания int 21h с обозначением функции в регистре AH и подфункции (если это необходимо) в регистре AL.
Ввод-вывод текстовых данных
Функция 01h: Ввод с клавиатуры
Вход AH = 01h
Выход AL = символ, полученный из устройства стандартного ввода
Описание: Считывает (ожидает) символ со стандартного устройства ввода. Отображает этот символ на стандартное устройство вывода (эхо). При распознавании Ctrl-Break выполняется int 23h.
Замечание: Ввод расширенных клавиш ASCII (F1-F12, PgUp, курсор и т. п.) требует двух обращений к этой функции. Первый вызов возвращает AL = 0. Второй вызов возвращает в AL расширенный код ASCII.
Функция 02h: Вывод на дисплей
Вход AH = 02h
DL = символ, выводимый на устройство стандартного вывода
Описание: Посылает символ из DL на устройство стандартного вывода. Обрабатывает символ Backspace (ASCII 8), перемещая курсор влево на одну позицию и оставляя его в новой позиции. При обнаружении Ctrl-Break выполняется int 23h.
Функция 09h: Вывести строку на дисплей
Вход AH = 09h
DS:DX = адрес строки, заканчивающейся символом '$' (ASCII 24h)
Описание: Строка, исключая завершающий ее символ '$', посылается на устройство стандартного вывода. Символы Backspace обрабатываются как в функции 02h. Обычно, чтобы перейти на новую строку, включают в текст пару CR/LF (ASCII 13h и ASCII 0ah).
Завершение программы
Функция 4dh: Дать код возврата программы (WAIT)
Вход AH = 4dh
Выход AL = код возврата последнего завершившегося процесса
AH = 0 - нормальное завершение
АН = 1 - завершение через Ctrl-Break int 23h
АН = 2 - завершение по критической ошибке устройства int 24h
АН = 3 - завершение через функцию 31h KEEP
Описание: Возвращает код возврата последнего из завершившихся процессов. Эта функция возвращает правильную информацию только однажды для каждого завершившегося процесса.
Работа с файлами
Лабораторная работа 1
Лабораторная работа 2
Общий формат команды Ассемблера
[Метка:] Код_операции [Операнд1 [,Операнд2] ] [;Комментарий ]
Адреса памяти в командах м.б. записаны так:
· А
· А[М]
· А[М1] [М2]
Где А – адрес, М – регистр ВХ, ВР, M2 - регистр SI или DI. В случае 2 и 3 компонента А может отсутствовать (т.е. А=0).
Примеры:
Mov Ax, Si
Mov Bh, 5
Mov Di, Size X
Mov X, Ah
Mov X[Bx][Di], 5
Mov [Bx], Cl
Mov Ah, 5
Mov Ax, 5
Mov [Bx], 300
Mov Ds, Ax
Mov Cx, Bh
Mov Dl, 300
Mov [Bx], 5 - Не Определён Тип Операнда
Mov Byte Ptr [Bx], 5
Mov Word Ptr [Bx], 5
X Dw 999
Mov Ah, X
Mov Ah, Byte Ptr X
Mov Ax, 80h
Mov Ax, -128;0ff80h
Mov Ax, 128;0080h
Mov Ax, 80h;0080h
|
|
|
Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...
Организация стока поверхностных вод: Наибольшее количество влаги на земном шаре испаряется с поверхности морей и океанов (88‰)...
Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...
Биохимия спиртового брожения: Основу технологии получения пива составляет спиртовое брожение, - при котором сахар превращается...
© cyberpediasu.com 2017-2026 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!