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

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

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

Восстановить пароль

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

Ответ
 
Опции темы Поиск в этой теме
Старый 17.10.2011, 17:17   #1
gylayko
Форумчанин
 
Регистрация: 14.09.2011
Сообщений: 203
Вопрос переделать текст ассемблера

значит так, есть текст программы
Код:
.model tiny
.386
.data
message1 db 'input string:',10,13,'$'; $ 
message2 db 10,13,'result min bukva:',10,13,'$'; $ 
message3 db 10,13,'result max bukva:',10,13,'$'; $ 
message4 db 10,13,'$'; $ 
buffer db 100 dup(0)
a dw 0
strlen dw 0
tabcif db '0123456789abcdef	' ;for  heximal, as example
tabchr db 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' ;for  heximal, as example
.code
 start: mov ax,@data
	mov ds,ax

; ввести число
 ; вывести подсказку
	mov ah,09h
	lea dx, message1
	int 21h
;   ввести последовательность символов
	mov cx, 100
 	mov di, 0
metka:	mov ah,01
	int 21h
	cmp al,13
	je ExitInput
	mov buffer[di],al
	inc di
	loop metka
exitInput:
	mov strlen,di
; вывести подсказку
	mov ah,09h
	lea dx, message2
	int 21h
	mov cx,strlen
	mov di,0
; проверка на число
co0:	;mul bx
	;xor dx,dx
	mov dl,buffer[di]
	cmp dl,'a'
	jb co1
	cmp dl,'z'
	jbe co2
co1: jmp next; 	jmp exit;
; вывести цифри	
co2:	
	mov ah,02
	int 21h
next:	inc di
 	loop co0
; вывести подсказку
	mov ah,09h
	lea dx, message3
	int 21h
	mov cx,strlen
	mov di,0
; проверка на число
co3:
	mov dl,buffer[di]
	cmp dl,'A'
	jb next2
	cmp dl,'Z'
	jbe co5
co4: ;  
	jmp next2
; вивести цифри	
co5:	
	mov ah,02
	int 21h
next2:	inc di
 	loop co3
re1:	
	mov ah,01
	int 21h

exit : mov ah,4ch
	int 21h
end start
нужно переделать, так чтобы команды, которые повторяются =>2 раз объединить в одну подпрограмму! то есть, допустим есть у нас 2 одинаковых действия, их нужно объединить в одну подпрограмму! как это сделать? помогите переделать код!
gylayko вне форума Ответить с цитированием
Ответ


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

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

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


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вставка ассемблера в Си Влодимир Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 6 18.02.2011 05:05
Основы ассемблера Maksim_27_10 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 3 08.07.2010 12:24
Помогите,как переделать текст проги Borland С++ Builder под Microsoft visual C++ 6.0 retpecub Visual C++ 9 15.06.2009 12:17
вставки из ассемблера макс07 Общие вопросы C/C++ 7 13.05.2008 19:19
Сравнение Си и Ассемблера... Sota Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 9 25.07.2007 16:15