Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 06.05.2018, 16:07   #1
Bartimeus777
 
Регистрация: 25.03.2018
Сообщений: 3
По умолчанию Открыть файл, считать строку из 10 символов и вывести ее. Почему не работает мой код?

Код:
model small
.stack 254

.data
fname db 'stroka1.txt',0h	
des dw 0
buff db 20 dup (?)
.code
start:
mov ax,@data
mov ds,ax
mov es,ax

        mov ah,3dh ;открываем файл
	mov al,0
	mov dx,offset fname
	int 21h
	mov bx,ax
	
        mov ah,3fh ;читаем 10 символов
	mov dx, offset buff
	mov cx,10
	int 21h

        lea dx,buff ;выводим
        mov ah,9
        int 21h

xor ah,ah
int 16h
mov ax, 4c00h   ; Завершение программы
int 21h    
end start
У меня выводит много каких-то непонятных символов. В файле txt просто символы 35safqeeh4dgqgwdggq
Вложения
Тип файла: txt stroka1.txt (19 байт, 125 просмотров)
Bartimeus777 вне форума Ответить с цитированием
Старый 06.05.2018, 16:32   #2
p51x
Старожил
 
Регистрация: 15.02.2010
Сообщений: 15,707
По умолчанию

И опять я вас отправлю читать хоть что-то.
Цитата:
DS:DX = адрес строки, заканчивающейся символом '$' (ASCII 24H)
У вас строка чем заканчивается? Вы результат чтения проверили?
p51x вне форума Ответить с цитированием
Старый 06.05.2018, 16:39   #3
R71MT
Участник клуба
 
Аватар для R71MT
 
Регистрация: 16.06.2011
Сообщений: 1,428
По умолчанию

Bartimeus777, оформи буфер так (маркером конца строки),
10 считанных символов перезапишут его, а 11-ый станет маркером:
Код:
buff db 20 dup ('$')
Нашедшего выход - затаптывают первым..
R71MT вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
[РЕШЕНО][Java] Почему не работает мой код? vadimor Помощь студентам 5 29.05.2017 22:39
не могу понять почему не работает мой пейджер Crabman PHP 16 06.08.2012 18:05
Как записать (считать) динамическую строку в (из) файл(а)? C++ Сергей089 Помощь студентам 2 10.02.2010 22:00
Почему мой код не завершает процесс? Stilet Win Api 1 24.07.2008 20:28