Шаг 5 - Функция прерывания

Опять возвращаемся к нашему коду из шага "Шаг 3 - Программа HelloWord":

mov ah,40h 
int 21h 
mov ah,04Ch 
int 21h 

Как видите я два раза вызывал прерывание, одно и тоже в первом случае выводил строку во втором закрывал приложение. Номер прерывания один и тот же, так как же удалось разобраться DOS что к чему. Дело в том, что одно прерывание может выполнять много функций. Например и вывод на экран и завершение программы. Просто вызывать INT 21h мало еще нужно указать что Вы конкретно хотите сделать. Вот это указывается в регистре AX. О регистрах я скажу чуть позже а пока Вы должны знать что Вы в регистре AX указываете что хотите сделать, то есть какое действие. Кстати это регистр забегая вперед делиться на две части (AX Ah+Al ) для архитектуры Intel 286. Но пока нас это не трогает так как есть совместимость программного обеспечения. Мы собираем 16 разрядный код и когда программа запускается на выполнение операционная система знает с чем имеет дело и ведет себя по правилам Intel 286. Вот смотрите

mov ah,40h	- функция вывода строки
mov ah,04Ch	- функция завершения программы

А теперь все вместе

mov ah,40h 	- будем выводить строку
int 21h 		- вывести	
mov ah,04Ch 	- будем закрывать программу
int 21h		- закрыть

Функция есть у всех прерываний 10,13,21 и так далее.


Предыдущий Шаг | Следующий Шаг | Оглавление
Автор Каев Артем - 26.11.2001