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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 30.05.2011, 15:15   #1
Сметуська
 
Регистрация: 14.03.2011
Сообщений: 5
По умолчанию Работа со строками

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

Код:
stk segment stack
   db 256 dup(?)
stk ends

data segment
	extrn s:byte
	extrn otvet:byte
	extrn sLen:byte

	probels dw 255 dup(?) ;позиция пробелов
	len dw 255 dup(?)     ;длина слов

	iLenE dw 0
data ends

code segment
assume cs:code,ds:data,ss:stk
public baur2
	mov ax,data
	mov ds,ax
	mov es,ax

baur2 proc
	mov si,0
	lea di,s
	mov bx,di
	inc bx
	mov probels[si],bx
	mov al,' '
	cld
	xor cx,cx
	mov cl,sLen
	add cx,2

c1:
repne scasb
	jcxz add_ends
	add si,2
	mov probels[si],di
	jmp c1
add_ends:
	add si,2
	mov probels[si],di

;get length words and move in massiv len
	mov ax,si
	mov iLenE,ax

c2:
	mov ax,probels[si]
	sub ax,probels[si-2]
	dec ax
	mov len[si-2],ax
	sub si,2
	cmp si,0
	jg c2

;sorted words
	mov dx,1
min:
	mov si,0
	mov di,0
c3:
	add si,2
	mov ax,len[si]
	mov bx,len[di]
	cmp ax,?
	je exit
	cmp ax,bx
	jge c3
	mov di,si
	jmp c3

exit:
	mov ax,len[di]
	cmp ax,255
	je quit
	mov cx,len[di]
	mov len[di],255
	inc cx
	mov si,probels[di]
c4:
	lodsb
	mov di,dx
	mov otvet[di],al
	inc dx
	loop c4
	jmp min
quit:
	mov al,sLen
	mov otvet[0],al
	extrn rezultat:near
	call rezultat
	ret
baur2 endp
code ends
end
Сметуська вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
работа со строками asyat Помощь студентам 4 10.03.2011 22:35
Работа с матрицами (норма матрицы, работа со строками) Neitrosha Помощь студентам 1 26.11.2010 20:19
Работа со строками K1nDeR Общие вопросы C/C++ 3 01.10.2010 14:05
работа со строками qasw Помощь студентам 1 05.10.2009 20:04
[С++]работа со строками Федор Помощь студентам 6 23.12.2007 12:35