Дипломная работа: Вивід вмісту каталогу y середовищі MS DOS
pushes ; збереження у стеку регістрів es, bx, що зміняться
pushbx
movah, 2Fh ;в ах номер функції
int21h
mov[DTAs], es ; збереження адреси DTA
mov[DTAo], bx
popbx ; відновлення попередніх значень регістрів bxі es
popes ; із стеку
В даному прикладі у змінних DTAsі DTAoзберігається адреса DTA, регістри bx, esнезмінні.
4Ehфункція INT21h[6]
Вхід: AH4Fh
DS:DXадреса ASCIIрядка із маскою імені файлу
СХ атрибут файлу для порівняння
Вихід: АХ код помилки, якщо в CF=1 буфер DTAзаповнений даними.
Дана функція знаходить ім'я першого файлу у переліку, що відповідає заданій масці і атрибуту, і поміщує інформацію про нього в буфер DTA. В AHпоміщується номер функції; регістрова пара вказує на рядок, що задає маску імені файлу; в СХ міститься атрибут файлу.
В імені файлу і розширенні допускаються узагальнені символи "*" і "?".
Функція повертає код помилки в AX, якщо файл не знайдений, або заповнює буфер DTAданими про файл.
4Fhфункція INT21h[6]
Вхід: AH4Fh
DS:DXадреса даних, повернутих попередньою 4Eh
функцією INT21h
Вихід: AXкод помилки, якщо CF=1
DTAзаповнена даними
Дана функція викликається після функції 4EhINT21hі знаходить наступний файл, що відповідає параметрам пошуку, заданим при визові 4EhINT21h.
В AHзаноситься номер функції, в регістрову пару DS:DX– адреса даних, повернутих попередньою функцією.
Функція повертає в AXкод помилки, якщо вона не відбулась, або поміщує в буфер DTAдані про файл, що відповідає узагальненому імені і атрибуту.
Приклад:
movah, 4Eh ; в аhномер функції першого пошуку
movdx, affsetmask ; в dxзміщення маски