Переименовать файл NEWFILE.txt в файл OLDFILE.txt и установить у него атрибут ReadOnl

Низкоуровневое программирование портов, микроконтроллеров и т.д.

Модератор: Andy

Ответить
АльфияГазизова
Сообщения: 1
Зарегистрирован: 03 июн 2018, 16:12

03 июн 2018, 16:15

Помогите пожалуйста понять в чем дело, при запуске ошибок нет, но программа не выполняет свое назначение


TITLE SETVOLUMELABEL (EXE) A.T var-3
text segment 'code' ; слово "Code" указывает, что это программный класс сегмента
assume cs: text, ds: data ; команда assume сопоставляет сегментные регистры и адресуемые ими сегменты
;CS - регистр программного сегмента, DS - регистр сегмента данных
; Определения
stdout=1 ; Дескриптор стандартного вывода
cr=13 ; Код возврата каретки
lf=10 ;Код перевода строки
;------------------------------------------------------------------
myproc proc
mov AX, data ; Инициализируем
mov DS, AX ;сегментный регистр DS
; Тело программы------------------------------------------
; Выведем авотра иназвание программы
mov AH,40h ;функция переключения режима
mov BX,stdout
mov CX,sooblen
mov DX,offset soob
int 21h ;Завершить и остаться
; Запись метки--------------------------------------------------
mov AH, 56H
lea DX, oldname
lea DI, newname
int 21h ; Вызов DOS


MOV AH,43H ;Запрос на установку
MOV AL,01 ; атрибута
MOV CX,01 ; только чтение-01; ;02-скрытый,00-нормальный
LEA DX,oldname ;ASCIIZ-строка
INT 21H
; Завершение программы--------------------------------
mov AX, 4C00h ; Функция завершения программы - выход в MS-DOS
int 21h ; Вызов DOS

myproc endp
text ends
; Поля данных---------------------------------------------
data segment
oldname db 'C:\Documents and Settings\ия\NEWFILE.txt',0
newname db 'C:\Documents and Settings\ия\OLDFILE.txt',0
soob db 'Rabota po SPO: variant 3 - file pereimenovan',cr,lf
sooblen equ $-soob
data ends
;--------------------------------------------------------------
end myproc ; конец программы
Ответить