мета-данные страницы
Загрузка не удалась. Возможно, проблемы с правами доступа?
Различия
Показаны различия между двумя версиями страницы.
Предыдущая версия справа и слеваПредыдущая версияСледующая версия | Предыдущая версияПоследняя версияСледующая версия справа и слева | ||
asm:lesson6 [21/10/2010 15:56] – arabusov | asm:lesson6 [21/10/2010 16:07] – arabusov | ||
---|---|---|---|
Строка 312: | Строка 312: | ||
При вызове: | При вызове: | ||
* AH = 3cH | * AH = 3cH | ||
+ | * CX = атрибут (в нашем случае всегда 0) | ||
+ | * DS:DX - адрес строки, | ||
+ | При возврате: | ||
+ | Успешно - флаг переноса сброшен | ||
+ | * AX = дескриптор | ||
+ | Неудачно - флаг переноса установлен | ||
+ | * AX = код ошибки | ||
+ | === Открытие файла === | ||
+ | По заданному в коде ASCIIZ пути открывает файл на указанном или текущем диске или на указанном или текущем каталоге. Возвращается дескриптор. | ||
+ | При вызове: | ||
+ | * AH = 3dH | ||
* AL = режим доступа | * AL = режим доступа | ||
| | ||
Строка 317: | Строка 328: | ||
| | ||
| | ||
- | * DS:DX - | + | * DS:DX - адрес строки, |
При возврате: | При возврате: | ||
Успешно - флаг переноса сброшен | Успешно - флаг переноса сброшен | ||
* AX = дескриптор | * AX = дескриптор | ||
Неудачно - флаг переноса установлен | Неудачно - флаг переноса установлен | ||
+ | * AX = код ошибки | ||
+ | === Закрытие файла === | ||
+ | При вызове: | ||
+ | * AH = 3Eh | ||
+ | * BX = дескриптор | ||
+ | При возврате: | ||
+ | Успешно - флаг переноса сброшен | ||
+ | Неудачно - флаг переноса установлен | ||
+ | * AX = код ошибки | ||
+ | === Чтение файла === | ||
+ | При вызове: | ||
+ | * AH = 3Fh | ||
+ | * BX = дескриптор | ||
+ | * CX = число байт для чтения | ||
+ | * DS:DX = адрес буфера | ||
+ | При возврате: | ||
+ | Успешно - флаг переноса сброшен | ||
+ | * AX = число переданных байтов (может быть меньше CX!) | ||
+ | Неудачно - флаг переноса установлен | ||
+ | * AX = код ошибки | ||
+ | === Запись в файл === | ||
+ | При вызове: | ||
+ | * AH = 40h | ||
+ | * BX = дескриптор | ||
+ | * CX = число байт для вывода записи | ||
+ | * DS:DX = адрес буфера | ||
+ | При возврате: | ||
+ | Успешно - флаг переноса сброшен | ||
+ | * AX = число переданных байтов (может быть меньше CX!) | ||
+ | Неудачно - флаг переноса установлен | ||
+ | * AX = код ошибки |