Лекция по программированию

Автор работы: Пользователь скрыл имя, 11 Января 2011 в 19:34, лекция

Краткое описание

Язык ассемблера - это один из самых старых из всех существующих языков программирования. Когда-то это был один из основных языков программирования, без знания которого нельзя было заставить компьютер сделать что-либо полезное. Появились более удобные средства общения с компьютером. Но в отличии от других языков ассемблер не умирал, более того он это не смог сделать в принципе.

Содержимое работы - 1 файл

LECTS.DOC

— 893.00 Кб (Скачать файл)

     В случае возникновения ошибки операция устанавливает флаг CF  в  1  и помещает в регистр AX код возврата: 03, 04 или 05 (см.табл.17.1).  Код  05 свидетельствует  либо  о  переполнении  оглавления,    либо    о    защите существующего файла атрибутом "только  чтение".  При  завершении  операции необходимо сначала проверить флаг CF, так как при создании файла  возможна установка в регистре AX файлового номера 0005, который можно легко спутать с кодом ошибки 05 (нет доступа).

Запись файла: шест.40

     Для записи  файла  используется  функция  DOS  шест.40.  При  этом  в регистре BX должен быть установлен файловый номер, в регистре CX -  число записываемых байт, а в регистре DX - адрес  области  выводаВ  следующем примере происходит запись 256 байт из области OUTREC:

               HANDLE1 DW   ?

               OUTREC  DB   256 DUP (' ')

                       MOV  AH,40H         ;Запрос записи

                       MOV  BX,HANDLE1     ;Файловый номер

                       MOV  CX,256         ;Длина записи

                       LEA  DX,OUTREC      ;Адрес области вывода

                       INT  21H            ;Вызов DOS

                       JC   error2         ;Проверка на ошибку

                       CMP  AX,256         ;Все байты записаны?

                       JNE  error3

    Правильная операция записывает из памяти  на  диск  все  данные  (256 байт), очищает флаг CF и устанавливает в регистре AX  число  действительно записанных байтовЕсли диск переполнен, то число записанных байтов может  отличаться от заданного числаВ случае  неправильной  операции  флаг  CF устанавливается в 1, а в регистр AX заносится код 05 (нет доступа) или  06 (ошибка файлового номера).

Закрытие файла: шест.3E

     После завершения записи файла необходимо установить файловый номер  в регистр BX и, используя функцию DOS шест.3E, закрыть  файлЭта  операция записывает все оставшиеся еще данные из  буфера  на  диск  и  корректирует оглавление и таблицу FAT.

               MOV  AH,3EH         ;Запрос на закрытие файла

               MOV  BX,HANDLE1     ;Файловый номер

               INT  21H            ;Вызов DOS

     В случае ошибки в регистре AX устанавливается  код  06  (неправильный файловый номер).

ЧТЕНИЕ ДИСКОВОГО ФАЙЛА

     В следующих  разделах  раскрыты  требования  для  открытия  и  чтения дисковых файлов в расширенной версии DOS.

Открытие файла: шест.3D

     Если  в  программе  требуется  прочитать  дисковый  файлто  прежде необходимо открыть его, используя функцию шест.3D.  Эта операция проверяет правильность имени файла и его наличие на дискеПри открытии регистр  DX должен содержать адрес необходимой  ASCIIZ-строкиа  регистр  AL  -  код доступа:

Информация о работе Лекция по программированию