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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 26.01.2011, 21:21   #1
Phoenix617
 
Регистрация: 26.01.2011
Сообщений: 4
По умолчанию

Есть код программы которая читает из файла символы строки,которые стоят на непарных местах(позициях)...Нужно чтобы программа читала из файла символы которые стоят на парных местах...Нужно переделать какуюто часть ,но какую и как не знаю..помогите пожалуста если кто может....

Код:
.MODEL SMALL
.STACK 100h
.DATA

msg1    db  'Enter the name of the dir in format a:\dir',10,13,'$'
msg2    db  'Enter the name of the file in format a:\dir\FileName.txt',10,13,'$'
msg3    db  'Enter the string...',10,13,'$'
hold    db  10,13,'$'

pl      db  20
rl      db  ?
buf     db  20 dup(0)

md       db 9
rd       db ?
string   db 9 dup (0)
string2 db 9 dup (?)
string3 db 5 dup(?)
handler Dw ?

.code
start:
	mov ax, @DATA
	mov ds, ax
	mov es,ax


	mov ax, 0003h
	int 10h

	lea dx,msg1
        mov ax,0900h
        int 21h
        
        lea dx,pl
        mov ah,0ah ;schitivanie
        int 21h
           
        mov ax,0
        mov al,rl
        mov si,ax
        mov buf[si],0
               
        lea dx,buf
        mov ah,39h;mkdir
        int 21h
             
        lea dx,hold
        mov ax,0900h
        int 21h
                                                
        lea dx,msg2
        mov ax,0900h
        int 21h
                                                                
        lea dx,pl
        mov ah,0ah
        int 21h
                                                                       
        mov ax,0
        mov al,rl
        mov si,ax
        mov buf[si],0
                                                                                                                               
        lea dx,buf
        mov ah,3ch;make file
        mov cx,20h;zaverhenie progr
        int 21h
          
        lea dx,hold
        mov ax,0900h
        int 21h
            
        lea dx,buf
        mov cx,0001h; shitivaet
        mov ah,3dh; open
        int 21h
        mov handler,ax
          
        lea dx,msg3
        mov ax,0900h
        int 21h
                  
        lea dx,md
        mov ah,0ah
        int 21h
        
        mov ax,0         
        mov al,rd
        mov si,ax
        mov string[si],'$'
   	     
        mov al,rd
        mov cx,ax
          
        lea dx,string
        mov ah,40h ;write
        mov bx,handler
        int 21h
               
        lea dx,buf
	mov al, 0
	mov ah, 3DH
	int 21H
	mov handler, ax

	xor cx, cx
	mov cl, rd
	mov bx, handler
	mov ah, 3FH; read
	lea dx, string2
	int 21H

xor dx, dx
xor di, di
mov si, 0
mov cx, ax
m1:
mov dl, byte ptr string2[si]
mov byte ptr string3[di], dl
inc di
add si, 2
loop m1
mov bx,2
cwd
idiv bx
mov di, ax
inc di
mov byte ptr string3[di], '$';

	mov ax, 0003h; ochistka
	int 10h
	mov ah, 3EH; close
	int 21H
	lea dx, string3
	mov ah, 09h
	int 21h
	mov ah, 08h
	int 21h

mov ax, 4c00h
int 21h

end start

Последний раз редактировалось Stilet; 27.01.2011 в 08:11.
Phoenix617 вне форума Ответить с цитированием
Старый 27.01.2011, 04:32   #2
vadimych
Форумчанин
 
Регистрация: 16.01.2011
Сообщений: 325
По умолчанию

Попробуйте

Код:
xor dx, dx
xor di, di
mov si,0; здесь заменить 0 на 1. 
mov cx, ax
m1:
mov dl, byte ptr string2[si]
mov byte ptr string3[di], dl
inc di
add si, 2
loop m1
mov bx,2
cwd
idiv bx
mov di, ax
inc di
mov byte ptr string3[di], '$';
vadimych вне форума Ответить с цитированием
Старый 27.01.2011, 15:18   #3
Phoenix617
 
Регистрация: 26.01.2011
Сообщений: 4
По умолчанию Спасибо...

Спасибо...Все работает....я менял раньше 0 на 1 но во всем коде...не знал что только в одной надо..Спасибо..
Phoenix617 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Игра Delphi "Парные картинки". Как сделать таблицу рекордов? Ucm106 Помощь студентам 4 07.12.2010 03:06
Нужны исходники игры "Парные картинки" Ellita Общие вопросы Delphi 5 09.05.2010 12:27
Проблема с реализацией логики в игре "парные картинки" Zaher Помощь студентам 4 22.12.2009 21:53
Записать в файл g все парные числа файла f Lemo Помощь студентам 3 19.10.2008 21:27