Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Создание файла 
:(
    Опции темы
FANDER69
Дата 4.10.2015, 20:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.9.2015

Репутация: нет
Всего: нет



Создание файла. В текущем каталоге диска создать файл с именем MYFILE.001 и записать в него символьную строку. После выполнения программы проверить наличие файла на диске и просмотреть его содержимое.
Реально ли такое проделать?
И на каком именно asm, какой компилятор использовать и какую оболчку?
PM MAIL   Вверх
R71MT
Дата 5.10.2015, 07:09 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 28.7.2015

Репутация: нет
Всего: 1



Цитата(FANDER69 @ 4.10.2015,  20:59)
Реально ли такое проделать?

..а почему-бы нет? На FASM'e это выглядит так:

Код

USE16
ORG 100H
JMP start

fName    DB   'MYFILE.001',0   ; имя файла
string   DB   'My file string: HELLO WORLD!'   ; текстовая строка
strSize  =    $ - string       ; константа с длинной строки
buff     DB   80 DUP(0)        ; буфер 80 байт (забит нулями)
handle   DW   0                ; переменная для дескриптора файла

start:
   MOV   AL,3                  ; видеорежим 80х25/16 цветов ============//
   INT   10h
   
   MOV   AH,3Ch                ; создать файл ==========================//
   MOV   DX,fName              ; имя файла
   MOV   CX,20h                ; атрибут "архивный"
   INT   21h

   MOV   AH,3Dh                ; открыть файл ==========================//
   MOV   AL,2                  ; режим - чтение/запись
   MOV   DX,fName              ; имя файла
   INT   21h
   MOV   [handle],AX           ; сохраняем дескриптор в переменную

   MOV   AH,40h                ; запись в файл =========================//
   MOV   BX,[handle]           ; дескриптор файла
   MOV   CX,strSize            ; сколько байт писАть
   MOV   DX,string             ; адрес текстовой строки
   INT   21h

   MOV   AH,42h                ; перемещаем указатель,
   MOV   AL,0                  ;      .. на начало файла
   MOV   BX,[handle]           ; дескриптор файла
   XOR   CX,CX                 ; CX:DX = 0
   XOR   DX,DX
   INT   21h

   MOV   AH,3Fh                ; читать из файла =======================//
   MOV   BX,[handle]           ; дескриптор файла (от куда читать)
   MOV   DX,buff               ; буфер для приёма данных (куда читать)
   MOV   CX,strSize            ; кол-во байт для чтения
   INT   21h

   MOV   AH,3Eh                ; закрыть файл ==========================//
   MOV   BX,[handle]           ; дескриптор файла (какой файл закрыть)
   INT   21h

   MOV   AH,40h                ; выводим инфу на экран =================//
   MOV   BX,1                  ; дескриптор(1) это STDOUT (или экран)
   MOV   CX,strSize            ; сколько байт вывести
   MOV   DX,buff               ; от куда брать инфу
   INT   21h

   XOR   AX,AX                 ; ожидаем нажатия любой клавиши..
   INT   16h
   INT   20h                   ; выходим из программы! =================//

   

PM MAIL   Вверх
R71MT
Дата 5.10.2015, 22:13 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 24
Регистрация: 28.7.2015

Репутация: нет
Всего: 1



..удивляюсь челам...
PM MAIL   Вверх
FANDER69
Дата 6.10.2015, 11:37 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.9.2015

Репутация: нет
Всего: нет



Цитата

..а почему-бы нет? На FASM'e это выглядит так:

сори что сразу не отписал буду под tasm делать, искал подходящий компилятор.
Может вы подскажите каким компилятором лучше пользоваться?
А есть ли для fasm-a что то на подобии emu8086, или типа turbo debager
PM MAIL   Вверх
FANDER69
Дата 7.10.2015, 15:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 7
Регистрация: 23.9.2015

Репутация: нет
Всего: нет



Цитата

..а почему-бы нет? На FASM'e это выглядит так:

спасибо всё работает как надо!
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Asm для начинающих"
MAKCim
  • Проставьте несколько ключевых слов темы, чтобы её можно было легче найти.
  • Не забывайте пользоваться кнопкой КОД.
  • Телепатов на форуме нет! Задавайте чёткий, конкретный и полный вопрос. Указывайте полностью ошибки компилятора и компоновщика.
  • Новое сообщение должно иметь прямое отношение к разделу форума. Флуд, флейм, оффтопик запрещены.
  • Категорически запрещается обсуждение вареза, "кряков", взлома программ и т.д.

Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, MAKCim.

 
 
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Asm для начинающих | Следующая тема »


 




[ Время генерации скрипта: 0.1301 ]   [ Использовано запросов: 21 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.