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

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

Вернуться   Форум программистов > Низкоуровневое программирование > Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 03.05.2013, 20:14   #1
Ioane
Пользователь
 
Регистрация: 18.12.2011
Сообщений: 22
По умолчанию блочное считывание

Как организовать блочное считывание (по 64 бита) информации из файла?
вот часть кода. что нужно в нем изменить?
Код:
.model small                         
.stack 100h                             
.data                                                                
 
FileName db 32 dup (?)
msg db 'input filename: ','$'
buf db ?
buffer db ?
HANDLE dw ?
 
 
.code                                   
start:
        mov ax, @data   ;инициализация сегментного регистра           
        mov ds, ax 
 
vvod:      
call fclear                
 
        
;вывод сообщения к вводу        
    mov ah,09h      ;функция вывода строки на экран
    mov dx,offset msg   ;смещение в dx
    int 21h
    
;ввод имени файла   
        mov ah, 3fh ;функция чтения
    xor bx, bx  ;дескриптор стандартного ввода
    mov cx, 64  ;сколько читать
    mov dx, offset FileName     ;помещаем смещение
 
    int 21h
 
    mov bx, ax  ;формирование строки
    sub bx, 2   ;с именем файла в формате ASCII
    mov FileName[bx], 0
 
 
;открытие файла
    mov ah, 3dh ;функция открытия файла
    mov al, 2   ;доступ для чтения\записи
    mov dx, offset FileName     ;смещение
    
    int 21h
    mov HANDLE, ax  ;дескриптор файла
 
    jc error
    jmp read
 
error:
 
    jmp vvod    ;переход к метке vvod
 
 
;чтение файла
read:   
            
    mov ah,3fh      ; функция чтения файла
    mov cx,40h      ; сколько читать
    mov dx, offset buffer   ; буфер
    int 21h         ; выполнить
    jc exit         ; проверить флаг на ошибку
    jmp next
 
next:
    mov ah, 09h
    mov dx, offset buffer
    int 21h
 
    jmp exit
 
 
exit:
 
        mov ax,4C00h    ;завершение программы                     
        int 21h
 
fclear PROC
;Очистка экрана
    mov al, 02h
    mov ah, 00h
    int 10h 
 
;установка курсора
        mov ah,02h                      
        mov bh,00   ;видео страница                    
        mov dh,01h      ;номер строки                
        mov dl,01h      ;номер колонки   
        int 10h
    ret
fclear ENDP
        
end start
Ioane вне форума Ответить с цитированием
Ответ


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

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Считывание из файла kuziashagrath85 Общие вопросы C/C++ 2 31.07.2012 08:16
Считывание Lisёноk Помощь студентам 5 08.11.2010 15:18
Считывание из файла Tema_Crazzzy Visual C++ 2 09.09.2010 13:41
c++ считывание с файла. tsergey Помощь студентам 20 24.04.2010 23:30
Считывание с TreeView program123 Общие вопросы Delphi 1 06.12.2009 19:22