Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler, MASM, TASM
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.89/9: Рейтинг темы: голосов - 9, средняя оценка - 4.89
masterlomaster
11 / 11 / 0
Регистрация: 25.02.2011
Сообщений: 183
1

Чтение файла

01.12.2011, 16:08. Просмотров 1633. Ответов 1
Метки нет (Все метки)

Здравствуйте.


Хочу увидеть в дампе памяти свой файл, а что то я его не вижу. Что не так делаю?
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
data segment para public
 
         
 fail  db ?     
 fail2  db 127 dup (?)
 
         ;Приглашение.
 str1 db 0dh, 0ah, "Bistro vvedite put k failu: " ,"$"
 
         ;Ввод файла пользователем.
 NAMEPAR LABEL BYTE ; Список параметров.
 MAXLEN db 20       ; Максимальная длина.
 ACTLEN db ?        ; Реальная длина.
 NAMEFLD db 20 dup(?) ; Введенные символы.
 
 
 
data ends
 
stck segment para stack
 dw 32 dup(?)
stck ends
 
code segment para public
 assume cs:code, ds:data, ss:stck, es:data
 
   start:
       ;Инициализация сегмента данных.
    mov     ax, data
    mov     ds, ax    
  
       ;Приглашение
    mov     ah, 09h
    mov     dx, offset str1
    int     21h                  
    
       ;Ввод файла пользователем.
    mov     ah, 0Ah
    lea     dx, NAMEPAR
    int     21h              
    
       ;Открытие файла.
    mov     ah, 3dh
    mov     al, 2
    mov     dx, offset NAMEFLD
    int     21h
    mov     fail,  al
    mov     bl, fail
   
    ;Чтение файла
     
    mov    ah, 3fh
    mov    dx, offset fail2
    mov    cx, 10
    int    21h
   
    mov     ah,1   
    int     21h
    mov     ax, 4c00h
    int     21h
 
  code ends
   end start
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
01.12.2011, 16:08
Ответы с готовыми решениями:

Чтение из файла
Есть код програмы, нужно сделать так что данные считывались из файла. Помогите плиз, очень надо!!...

Чтение из файла, исправить код
Есть програма, которая должна создать папку, потом в файл и записать в файл, информацию а потом...

Чтение перевода строки из файла
Есть исходный .txt файл из которого я гружу 100байт в buff DB 40,41 dup(?) этот buff я...

Создание, запись, чтение файла. Массивы, циклы. Где-то ошибка.
Написал код небольшой программы, но где-то допустил ошибку. Не понимаю всех тонкостей, пожалуйста,...

Резидентная программа: при нажатии Ctrl+A сменить атрибуты файла на "только чтение"
Здраствуйте, есть программа на ассемблере, при нажатии Стрл+А меняет атрибуты файла на только...

1
volvo
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
27031 / 18075 / 7147
Регистрация: 22.10.2011
Сообщений: 31,825
Записей в блоге: 6
04.12.2011, 12:41 2
Если бы ты проверял успешность открытия файла:

Assembler
1
2
3
4
5
6
7
8
9
    ; Открытие файла.
    mov ah, 3dh
    mov al, 2
    mov dx, offset NAMEFLD
    int 21h
    jnc Opened ; <--- Вот так
    
    jmp Oops_Error
Opened:
, то увидел бы, что он просто не открылся: при вызове функции 3dh в DS : DX должна быть ASCIIZ-строка (то есть, строка, завершающаяся нулем), а у тебя после имени файла - символ 0Dh. Замени его на 0 - увидишь в дампе содержимое файла:
Assembler
1
2
3
4
5
6
7
8
9
10
    ; Ввод имени файла пользователем.
    mov ah, 0Ah
    lea dx, NAMEPAR
    int 21h
    
    xor bx, bx ; <--- Вот эти 3 строки
    mov bl, ACTLEN
    mov NAMEFLD[bx], 0
 
    ; Открытие файла.
0
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
04.12.2011, 12:41

чтение из файла
как считать из текстового файла две строчки желательно вдвухмерный массив с помощью 3Fh и нужно ли...

DOSBox и чтение из файла
День добрый, один и тот же код: mov ah,3Fh ;чтение файла mov bx,hnd lea dx,buf mov cx,2...

Чтение из файла Tasm
Добрый день. Сделал я, собственно, открытие\чтение\вывод\закрытие файла, да только чтение не...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru