Форум программистов, компьютерный форум, киберфорум
Assembler: DOS/Real Mode/16-bits
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.91/58: Рейтинг темы: голосов - 58, средняя оценка - 4.91
Заблокирован

Открытие файла для чтения и вывод его содержимого на экран

11.11.2011, 14:50. Показов 12332. Ответов 19
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вообще задача звучит так: Файл содержит сведения о товарах, находящихся на складе: наименование, объем партии, дата поступления на склад, стоимость единицы товара. Разработать программу поиска характеристик товара по его наименования и запись их в отдельный файл, имя которого будет характеризоваться наименованием товара.
пока я создала только файл со списком товаров(пишу в латинице на всякий случай). пытаюсь открыть его для чтения и вывести его содержимое на экран. вот код. программа ничего не отображает. только почему то позволяет вводить любые символы.в чём ошибка?
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
model small
.stack 200h
.data
    way db 'c:\tasm\bin\goods.txt',0
    buf db (?)
.code   
include lab6.txt
prog:
    mov ax, @data
    mov ds, ax
    
    mov ah, 00h     ; Очистка экрана
    mov al, 03h
    int 10h
    
    mov ah,3dh       ; открываем для чтения
    mov al,0
    lea dx, way
    int 21h
    jc exit
 
out1:   
    mov ah,3fh          ; читаем из файла
    mov cx,1
    lea dx, buf
    int 21h
    cmp ax,cx
    jnz close
    mov dl,buf
    mov ah,02h
    int 21h
    jmp out1
    
close:  
    mov ah,3eh     ;закрываем файл
    int 21h
                
    ;vvodstr
        
        mov ah,10h
    int 16h
exit:
    mov ax, 4c00h
    int 21h
end prog
Добавлено через 2 минуты
проблему исправила по аналогии с кодом на https://www.cyberforum.ru/asse... 17262.html
но не могу понять что выполняют строки
Assembler
1
2
3
4
5
mov bx,ax               ; копируем в bx указатель файла
            xor cx,cx
            xor dx,dx
            mov ax,4200h
            int 21h         ; идем к началу файла
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.11.2011, 14:50
Ответы с готовыми решениями:

Чтение файла и вывод его содержимого на экран
Может у кого есть код на асе: нужно с командной строки ввести имя файла(который заранее создан в блокноте и в него записаны символы),...

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

Вывод содержимого txt файла на экран, com-программа нужна
%define b_length 80 %define stdout 0x0001 section .text org 0x100 mov bp,stdout mov ax,0x3d00 mov dx,file_name int 0x21 jc...

19
273 / 268 / 11
Регистрация: 24.12.2010
Сообщений: 328
11.11.2011, 15:11
В bx помещается дескриптор, получаемый при открытии файла, в cx и dx смещение указателя от его начала(cx - ст.часть смещения, dx - младшая). В данном случае указатель будет установлен в самое начало открытого файла.
1
Заблокирован
11.11.2011, 17:22  [ТС]
пытаюсь считать из файла наименование продукта и сравнить его с введённым пользователем наименованием. выдаёт 2 ошибки при тасме в 65(extra characters on line) и 78 строке(can`t override es segment). как исправить?
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
masm
model small
.stack 200h
.data
    way db 'c:\tasm\bin\goods.txt',0
    str1 db 'Vvedite naimenovanie tovara: ', ('$')
    str2 db 'Dannie zapisani',('$')
    way2 db 'c:\tasm\bin\' 
    name1 db (?)
    buf db (?)
    buf1 db (?)
    i db 0h
    incr db 0
    kol db 0
    sm dw 38d
    descr dw 0h
    endway db (?)
.code   
include lab6.txt
prog:
    mov ax, @data
    mov ds, ax
    mov es, ax
    
    mov ah, 00h     ; Очистка экрана
    mov al, 03h
    int 10h
          
    cld
    
            vivodstr str1
    vvodstr
    mov ah,10h
    int 16h
;--------------------------------------------------------------------   
    mov ah,3dh       ; открываем для чтения
    mov al,0
    lea dx, way
    int 21h
          
    mov descr,ax
    mov bx,descr               ; копируем в bx указатель файла
            xor cx,cx
            xor dx,dx
            mov ax,4200h
            int 21h         ; идем к началу файла
            lea di,buf
;---------------------------------------------------------------------------            
out1:   
    mov ah,3fh          ; читаем из файла
    mov cx,1
    lea dx, buf
    int 21h
    mov dx,[di]
    cmp dx,20h
    je finish
    inc i
    inc di
    cmp ax,cx
    jnz finish
    jmp out1
finish:
    inc incr
    mov dx,sm
    mul dx,incr
    mov sm,dx 
    mov ah,42h
    mov al,0
    mov cx,0
    mov dx,sm
    int 21h
    
    mov dl,kol
    cmp dl,i
    jne out1
    lea si,name1
    lea di,buf
    repe cmps buf,name1
            jcxz rec
            jmp exit
;-------------------------------------------------------------------------              
rec:
    mov dl, 10          ;перевод курсора на новую строку
    mov ah, 02h
    int 21h
            mov dl, 13    
    mov ah, 02h
    int 21h
        
    vivodstr str2
    
exit:   mov ah,10h
    int 16h
    
    mov ax, 4c00h
    int 21h
end prog
файл lab6.txt
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
vivodstr macro z
    mov dx, offset z
    mov ah, 09h
    int 21h
endm
 
vvodstr macro
local n1,ex
    xor dx,dx
    mov cl,70
    lea bx,name1+1
n1:
    mov ah,10h
    int 16h
    cmp al,10
    je ex
    cmp al,13
    je ex
    cmp al,30h
    jl n1
    cmp al,7ah
    jg n1        
    push dx
    mov dl,al
    mov ah,02h
    int 21h
    pop dx
    mov [bx],al
    inc bx
    inc dl                
    cmp dl,cl
    je ex
    loop n1
ex:     
    mov kol,dl
    mov dl, 10          ;перевод курсора на новую строку
    mov ah, 02h
    int 21h
        mov dl, 13    
    mov ah, 02h
    int 21h
endm
и файл goods.txt
goods.txt
0
Заблокирован
11.11.2011, 19:27  [ТС]
HELP!!!!!
0
 Аватар для Goodwin98
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
11.11.2011, 21:24
посмотрите как правильно использовать команды mul и cmps
1
Заблокирован
11.11.2011, 21:56  [ТС]
всё исправила.немного переделала код...только вот работает она неправильно.точнее не работает...=(
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
64
65
66
masm
model small
.stack 100h
.data
    way db 'c:\tasm\bin\goods.txt',0
    str1 db 'Vvedite naimenovanie tovara: ', ('$')
    str2 db 'Dannie zapisani',('$')
    nm db (?),('.txt'),0     ;имя файла для создания
    buf db (?)             ;буфер для считанного наименования
    buf2 db (?)           ;буфер для строки - записи в файл
    i db 0h                   ;счётчик количества считанных символов
    incr db 0                ;номер строки в файле
    kol db 0                 ;число символов в ведённом наименовании
    sm dw 38d            ;смещение курсора в файле
    descr dw 0h         ;дескриптор для текущего файла
.code   
include lab6.txt
prog:
    mov ax, @data
    mov ds, ax
    mov es, ax
    
    mov ah, 00h     ; Очистка экрана
    mov al, 03h
    int 10h
    
            vivodstr str1
    vvodstr
    mov ah,10h
    int 16h
;--------------------------------------------------------------------   
    mov ah,3dh       ; открываем для чтения
    mov al,92h
    lea dx, way
    int 21h
          
    mov descr,ax
    mov bx,descr               ; копируем в bx указатель файла
            xor cx,cx
            xor dx,dx
            mov ax,4200h
            int 21h         ; идем к началу файла
;---------------------------------------------------------------------------            
out1:   
    mov ah,3fh          ; читаем из файла
    mov cx,10
    lea dx, buf
    int 21h
    
    lea di,buf
    mov dl,[di]
    cmp dl,20h
    je finish
    inc i
    inc di
    jmp out1
finish:
    mov ax,24h
    mov [di],ax
    lea di,buf+1
    lea si,nm+1
    cld
    mov cl,i
    mov ch,0
    repe cmpsb
    jcxz  rec
Добавлено через 27 минут
код не до конца привела. вот полностью.
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
masm
model small
.stack 100h
.data
    way db 'c:\tasm\bin\goods.txt',0
    str1 db 'Vvedite naimenovanie tovara: ', ('$')
    str2 db 'Dannie zapisani',('$')
    nm db (?),('.txt'),0     ;имя файла для создания
    buf db (?)             ;буфер для считанного наименования
    buf2 db (?)           ;буфер для строки - записи в файл
    i db 0h                   ;счётчик количества считанных символов
    incr db 0                ;номер строки в файле
    kol db 0                 ;число символов в ведённом наименовании
    sm dw 38d            ;смещение курсора в файле
    descr dw 0h         ;дескриптор для текущего файла
.code   
include lab6.txt
prog:
    mov ax, @data
    mov ds, ax
    mov es, ax
    
    mov ah, 00h     ; Очистка экрана
    mov al, 03h
    int 10h
    
            vivodstr str1
    vvodstr
    mov ah,10h
    int 16h
;--------------------------------------------------------------------   
    mov ah,3dh       ; открываем для чтения
    mov al,92h
    lea dx, way
    int 21h
          
    mov descr,ax
    mov bx,descr               ; копируем в bx указатель файла
            xor cx,cx
            xor dx,dx
            mov ax,4200h
            int 21h         ; идем к началу файла
;---------------------------------------------------------------------------            
out1:   
    mov ah,3fh          ; читаем из файла
    mov cx,10
    lea dx, buf
    int 21h
    
    lea di,buf
    mov dl,[di]
    cmp dl,20h
    je finish
    inc i
    inc di
    jmp out1
finish:
    mov ax,24h
    mov [di],ax
    lea di,buf+1
    lea si,nm+1
    cld
    mov cl,i
    mov ch,0
    repe cmpsb
    jcxz  rec
    jmp exit 
rec:
        mov dl, 10              ;перевод курсора на новую строку
        mov ah, 02h
        int 21h
                mov dl, 13    
        mov ah, 02h
        int 21h
                
        vivodstr str2
        
exit:   mov ah,10h
        int 16h
        
        mov ax, 4c00h
        int 21h
end prog
0
Супер-модератор
Эксперт Pascal/DelphiАвтор FAQ
 Аватар для volvo
33398 / 21508 / 8236
Регистрация: 22.10.2011
Сообщений: 36,906
Записей в блоге: 12
11.11.2011, 23:04
Цитата Сообщение от Alenka=) Посмотреть сообщение
только вот работает она неправильно.точнее не работает...=(
Она не только не работает, она даже не компилируется:
**Error** EX.asm(28) VVODSTR(3) Undefined symbol: NAME1
А name1 действительно нигде не описан... Исправляй.
0
 Аватар для Goodwin98
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
12.11.2011, 00:09
кроме того..
Assembler
1
2
3
        nm db (?),('.txt'),0     ;имя файла для создания
        buf db (?)             ;буфер для считанного наименования
        buf2 db (?)           ;буфер для строки - записи в файл
так вы определяете по 1 байту на каждый буфер, наверное вы хотели написать что-то вроде
Assembler
1
... db 32 dup(?)
где 32 - это длинна буфера.
1
Заблокирован
12.11.2011, 13:20  [ТС]
пытаюсь прочитать из файла в буфер 36 байт. выводит эти 36 байт + какие-то лишние символы. не могу понять где ошибка.
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
masm
model small
.data
    path db "goods.txt",0 ;имя файла для открытия
    buf db 37,0
    kol db 0h
    des dw 0h
    i db 0h
.code
vivodstr macro z
    mov dx,offset z
    mov ah,09h
    int 21h
endm
 
prog:   
    mov ax,@data
    mov ds,ax
    mov es,ax   
    
    mov ax,3d00h
    lea dx,path 
    int 21h
    jc exit
    mov des,ax
    mov bx,des
    xor cx,cx
    xor dx,dx
    mov ax,4200h
    int 21h
    
    mov ax,3f00h
    mov cx,36
    lea dx,buf
    int 21h
    
    vivodstr buf
    
    mov ax,3e00h
    int 21h
        
exit:   mov ah,10h
    int 16h
    
    mov ax,4c00h
    int 21h
end prog
и вот файл из которого считываю.
Вложение 106233
0
251 / 239 / 16
Регистрация: 31.12.2009
Сообщений: 324
12.11.2011, 13:55
поменять вашу 5-ю строчку на эту
Assembler
1
buf db 37 dup('$')
оно?
кстати "Вложение 106233" почему то не открывается=(
1
Заблокирован
12.11.2011, 13:58  [ТС]
да!спасибо огромное!
0
Заблокирован
12.11.2011, 15:00  [ТС]
теперь считываю первые 10 байт из каждой строки в файле. правильно считывает только из первой строки. потом левые символы.
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
masm
model small
.data
    str1 db 'Vvedite naimenovanie tovara',0
    str2 db 'Dannie zapisani',0
    path db "goods.txt",0 ;имя файла для открытия
    buf db 10 dup ('$')
    kol db 0h
    des dw 0h
    i db 0h
    counter dw 0h
    
.code
include lab6.txt
prog:   
    mov ax,@data
    mov ds,ax
    mov es,ax   
    
    mov ax,3d00h
    lea dx,path 
    int 21h
    jc exit
    mov des,ax
    mov bx,des
    xor dx,dx
    xor cx,cx
    mov ax,4200h
    int 21h
    jmp m2
m1: mov ax,4201h
    int 21h
    
m2: mov ax,3f00h
    mov cx,10
    lea dx,buf
    int 21h
    vivodstr buf
    
    add counter,38
    mov cx,0
    mov dx,counter
    cmp counter,266
    jge exit
    jmp m2
    
exit:   mov ax,3e00h
    int 21h
        
    mov ah,10h
    int 16h
    
    mov ax,4c00h
    int 21h
end prog
вот файл
[ATTACH]goods[/ATTACH]
Вложения
Тип файла: txt goods.txt (264 байт, 19 просмотров)
0
 Аватар для Goodwin98
2537 / 833 / 10
Регистрация: 31.05.2009
Сообщений: 1,668
12.11.2011, 17:00
Буфер - 10 байт и считываете бы 10 байт. И т.к. символ конца строки(в данном случае это $) вы затираете, то программа пытается вывести и то, что после строки. Увеличьте буффер хотя бы на 1 байт.
1
Заблокирован
12.11.2011, 19:04  [ТС]
с основной частью я справилась вроде.теперь создать файл не получается, и естественно записать в него=((82 строка)
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
masm
model small
.data
    str1 db 'Vvedite naimenovanie tovara: ',('$')
    str2 db 'Dannie zapisani',('$')
    txt db '.txt',0
    path db "goods.txt",0 ;имя файла для открытия
    wd db 11 dup ('$')
    buf db 11 dup ('$')
    buffer db 37 dup ('$')
    kol db 0h
    des dw 0h
    des2 dw 0h
    i db 0h
    counter dw 0h
.code
include lab6.txt
prog:   
    mov ax,@data
    mov ds,ax
    mov es,ax   
    
    vivodstr str1
    vvodstr
    mov ax,3d00h  ;открываем файл для чтения
    lea dx,path 
    int 21h
    mov des,ax
    mov bx,des
    xor dx,dx                ;переместили указатель в начало файла
    xor cx,cx
    mov ax,4200h
    int 21h
    jmp m2
m1: mov ax,4200h
    int 21h
    
m2: mov ax,3f00h         ;начинаем читать
    mov cx,10
    lea dx,buf
    int 21h
    
    lea di,buf
    lea si,wd
m4: mov al,[di]
    cmp al,[si]
    jne m3
    inc di
    inc si
    inc i
    mov bl,kol
    cmp bl,i
    je m5
    jmp m4
        
m3: add counter,38
    mov cx,0
    mov dx,counter
    cmp counter,266
    jge exit
    jmp m1
m5: 
    mov di, offset buf ; исходная она же конечная строка
    mov bl,kol
    mov bh,0
    add di,bx ; её длина
    mov si,offset  txt ; строка для копирования
    mov cx,5 ; ее длина
    rep movsb ; копирование
    vivodstr buf
          mov bx,des
          xor cx,cx                ;переместили указатель в начало файла
    mov dx,counter
    mov ax,4200h
    int 21h
    mov ax,3f00h         ;начинаем читать
    mov cx,36
    lea dx,buffer
    int 21h
    vivodstr buffer
          
    mov dx,offset buf   
    mov cx,100010b      ; атрибуты создаваемого файла (табл. 6.8)
    mov ah,3ch  
    int 21h
          vivodstr str2
          mov des2,ax
          mov bx, des2
    mov cx, 36
    mov ah, 40h
    lea dx, buffer
    int 21h
 
 
exit:   
    mov ax,3e00h
    int 21h
        
    mov ah,10h
    int 16h
    
    mov ax,4c00h
    int 21h
end prog
Добавлено через 27 минут
причём заметила странность.если изначально наименование вводить неполностью файл создаётся, но в него ничего не записывается.
0
 Аватар для Vadimych
639 / 482 / 12
Регистрация: 10.01.2011
Сообщений: 1,045
12.11.2011, 19:29
Alenka=), когда возвращается управление на m1, в bx явно уже не дескриптор. И атрибуты у создаваемого файла - скрытый и архивный, может, его просто не видно?
1
Заблокирован
12.11.2011, 19:35  [ТС]
спасибо!=)я как всегда...=(...вопрос про атрибуты создаваемого файла, если мне нужно создать его для записи в него, каким должен быть атрибут???
0
 Аватар для Vadimych
639 / 482 / 12
Регистрация: 10.01.2011
Сообщений: 1,045
12.11.2011, 19:45
Да нулевое значение cx.
0
Заблокирован
12.11.2011, 21:37  [ТС]
последний штрих в проге сделать пытаюсь. чтобы она сама вычисляла число символов, и определяла размер файла, чтобы определиться, когда заканчивать чтение из файла.так вот.последние 2 записи не срабатывают.
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
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
masm
model small
.data
    str1 db 'Vvedite naimenovanie tovara: ',('$')
    str2 db 0ah,'Dannie zapisani',('$')
    txt db '.txt',0
    path db "goods.txt",0 ;имя файла для открытия
    wd db 11 dup ('$')
    buf db 11 dup ('$')
    buffer db 37 dup ('$')
    buferina db (?)
    kol db 0h
    des dw 0h
    des2 dw 0h
    i db 0h
    counter dw 0h
    razmer dw 0h
.code
include lab6.txt
prog:   
    mov ax,@data
    mov ds,ax
    mov es,ax   
    
    vivodstr str1
    vvodstr
    mov ax,3d00h  ;открываем файл для чтения
    lea dx,path 
    int 21h
    mov des,ax
    mov bx,des
    
    xor dx,dx                ;переместили указатель в начало файла
    xor cx,cx
    mov ax,4200h
    int 21h
    mov ax,4200h
    int 21h
m0: mov ax,3f00h         ;начинаем читать
    mov cx,1
    lea dx,buferina
    int 21h
    cmp ax,cx
    jnz m00
    inc razmer
    jmp m0
    
m00:    xor dx,dx                ;переместили указатель в начало файла
    xor cx,cx
m1: mov bx,des
    mov ax,4200h
    int 21h
    
    mov ax,3f00h         ;начинаем читать
    mov cx,10
    lea dx,buf
    int 21h
    
    lea di,buf
    lea si,wd
m4: mov al,[di]
    cmp al,[si]
    jne m3
    inc di
    inc si
    inc i
    mov bl,kol
    cmp bl,i
    je m5
    jmp m4
        
m3: add counter,38
    mov cx,0
    mov dx,counter
    cmp dx,razmer
    jge exit1
    jmp m1
m5: 
m6: mov al,20h
    mov bl,24h
    cmp [di],bl
    je m7 
    cmp [di],al
    jne exit
    inc di
    jmp m6
m7: mov di, offset buf ; исходная она же конечная строка
    mov bl,kol
    mov bh,0
    add di,bx ; её длина
    mov si,offset  txt ; строка для копирования
    mov cx,4 ; ее длина
    rep movsb ; копирование
    mov ax,0
    mov [di],ax
    jmp m10
exit1:jmp exit  
m10:    vivodstr buf
          mov bx,des
          xor cx,cx                ;переместили указатель в начало файла
    mov dx,counter
    mov ax,4200h
    int 21h
    mov ax,3f00h         ;начинаем читать
    mov cx,36
    lea dx,buffer
    int 21h
    vivodstr buffer
          
    mov dx,offset buf   
    mov cx,0        ; атрибуты создаваемого файла (табл. 6.8)
    mov ah,3ch  
    int 21h
          mov dx,offset buf
          mov ax,3d02h
          int 21h
            mov des2,ax 
          vivodstr str2
          mov bx, des2
    mov cx, 36
    mov ah, 40h
    lea dx, buffer
    int 21h
          
    mov ah,3eh
    mov bx,des2
    int 21h
 
exit:   mov ah,3eh
    mov bx,des
    int 21h
    
    mov ax,3e00h
    int 21h
        
    mov ah,10h
    int 16h
    
    mov ax,4c00h
    int 21h
end prog
вот сам файл
Вложения
Тип файла: txt goods.txt (380 байт, 28 просмотров)
0
Заблокирован
12.11.2011, 21:56  [ТС]
вот ещё для инклуда [ATTACH]lab6[/ATTACH]
Вложения
Тип файла: txt lab6.txt (548 байт, 48 просмотров)
0
Заблокирован
12.11.2011, 22:33  [ТС]
справилась сама.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
12.11.2011, 22:33
Помогаю со студенческими работами здесь

Чтение файла и вывод его содержимого на экран
помогите разобраться с чтением файла и выводом его содержимого на экран... а то что ни как не получается... запутался... :wall:

Чтение файла в интернете и вывод его содержимого на экран
Нужно программа, которая прочитает файл "http://mysite.com/HelloWorld.txt" и выведет его содержимое на экран

Пропуск чтения пустого файла docx (и вывод полного содержимого файла)
Добрый день! Данный кусок кода при чтении пустого файла docx выдает ошибку – «…"Package not found at '%s'" % pkg_file ...

Как осуществить открытие текстового файла и вывод содержимого в поле Edit
Создал поля Edit не совсем понимаю как осуществить открытие текстового файла на поле и возможностью его там редактировать. LRESULT...

Открытие файла для чтения
#include <stdio.h> #include <conio.h> #include <clocale> #include <string.h> using namespace std; main () { ...


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд. Даже если у вас. . .
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает монорепозиторий в котором находятся все исходники. При создании нового решения, мы просто добавляем нужные проекты и имеем. . .
Модульный подход на примере F#
DevAlt 06.03.2026
В блоге дяди Боба наткнулся на такое определение: В этой книге («Подход, основанный на вариантах использования») Ивар утверждает, что архитектура программного обеспечения — это структуры,. . .
Управление камерой с помощью скрипта OrbitControls.js на Three.js: Вращение, зум и панорамирование
8Observer8 05.03.2026
Содержание блога Финальная демка в браузере работает на Desktop и мобильных браузерах. Итоговый код: orbit-controls-threejs-js. zip. Сканируйте QR-код на мобильном. Вращайте камеру одним пальцем,. . .
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip Сканируйте QR-код на мобильном и вы увидите, что появится джойстик для управления главным героем. . . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru