Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 30.05.2014, 12:27   #1 (permalink)
мистерикс
Новичок
 
Регистрация: 23.05.2014
Сообщений: 2
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Помогите написать программу в ассемблере

Нужно написать программу, которая будет переименовывать созданный мной файл и ставить на нем атрибут "только для чтения". Всем заранее спасибо!
мистерикс вне форума   Ответить с цитированием

Старый 30.05.2014, 12:27
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Может быть такое, что участники форума уже решили эту проблему

Помогите написать программу
Написать программу на Ассемблере
Помогите написать программу
Помогите написать программу на Си
Помогите написать программу

Старый 30.05.2014, 13:49   #2 (permalink)
Gruvi
VIP user
 
Аватар для Gruvi
 
Регистрация: 10.03.2011
Сообщений: 766
Записей в дневнике: 1
Сказал(а) спасибо: 10
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 3453
По умолчанию

Для установки атрибутов заданного файла в регистре AX должен находиться 4301h. Регистры DS : DX должны содержать адрес строки с именем файла, строка должна заканчиваться нулем и может содержать путь к файлу. В регистре CX должны содержаться новые атрибуты файла. Если не было ошибки, то флаг CF = 0. Если произошла ошибка, то флаг CF = 1 и в регистре AX находится код ошибки.
Функция 4Eh предназначена для начала поиска файлов по шаблону, функция 4Fh для продолжения поиска файлов по шаблону. Для поиска всех файлов соответствующих данному шаблону, надо вызвать функцию 4Eh, после чего вызывать функцию 4Fh, до тех пор, пока CF=0.
Для поиска следующего файл по шаблону используется функция 4Fh. В регистре AH должен находиться номер функции (4Fh). При выходе, если ошибки не произошло, флаг CF=0. Содержимое области DTA обновлено новым найденным файлом. Если произошла ошибка — флаг CF=1, в регистре AX находится код ошибки.
В качестве шаблона для поиска в текущем каталоге имя файла *.*


Переименовать:
Цитата:
.code
push cs
push cs
pop ds
pop es ;na vsyak cluchai
mov ah,56h
mov dx,offset fileold
mov di,offset filenew
int 21h
jnc ok
;obrabotka oshibki

ok:
int 20h

AH = 56H
DSX = адрес старого ASCIIZ имени (путь/имя существующего файла)
ESI = адрес нового ASCIIZ имени (новые путь/имя)

Выход

AX = код ошибки если CF установлен
Gruvi вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:08.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.