![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Регистрация: 02.03.2011
Сообщений: 7
|
![]()
может, кто знает, помогите пожалуста решить задачу: дано - текст, слова в котором разделены пробелами, вывести те слова которые встречаються в тексте ровно один раз...
вводимый текст адресуется регистром SI, а выводимый текст регистром DI... кто сможет помочь - заранее спасибо! |
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 23.04.2009
Сообщений: 346
|
![]()
вообщем-то ни нам ни вам, решил сделать что то подобное, что для себя б не помешало и похоже на вашу задачу - отсеивает все слова, которые уже встречались в тексте. если нужен перевод под 16 битную архитектуру, комментарии и прочее "именно по вашему заданию"-в коммерц!
собственно сплошное гуано и костыли, ну а что вы есчо от меня ждали? Код:
Нет, ну правда..
Последний раз редактировалось yuran666666; 03.03.2011 в 10:32. |
![]() |
![]() |
![]() |
#3 |
Регистрация: 02.03.2011
Сообщений: 7
|
![]()
мне бы только под 16-битную архитектуру(
вот сам пытался сделать,процедура search отделяет слово и пишет его в масив, lengz находит длину строки, а compare ищет во всей строке данное слово, но вот скорее всего в ней и ошибка, только вот какая? mydata segment para 'data' buf db 100,0 str1 db 101 dup('$') newline db 0dh,0ah,'$' mas db 20 dup('$') len dw ? lenzag dw ? nword dw ? mydata ends mystack segment para 'stack' db 256 dup (?) mystack ends mycode segment para 'code' assume cs:mycode, ds:mydata, es:mydata start: mov ax,mydata mov ds,ax mov es,ax xor bx,bx lea dx,buf mov ah,0ah int 21h lea dx,newline mov ah,09h int 21h call lengz mitka: call search call compare cmp bx,1 jne m6 lea dx,mas mov ah,09h int 21h mov ah,02h mov dl,' ' int 21h inc si m6: mov ah,0 mov al,0dh cmp str1[si],al ja mitka mov ax,4c00h int 21h lengz proc near xor bx,bx mov al,0dh m7: cmp str1[si],al je xxx inc si inc bx jmp m7 xxx: mov lenzag,bx xor ax,ax mov si,0 ret lengz endp search proc near mov cx,20 mov al,'$' mov di,0 m2: mov mas[di],al inc di loop m2 mov di,0 m1: mov al,' ' cmp str1[si],al je ext mov ah,str1[si] mov mas[di],ah inc di inc si mov al,0dh cmp str1[si],al je ext jmp m1 ext: mov len,di mov di,0 ret search endp compare proc near xor bx,bx push si mov al,str1[si] mov cx,lenzag lea di,str1 repne scasb mov cx,len lea di,mas repe cmpsb cmp cx,0 jne m5 mov bx,1 mov al,0dh cmp str1[si],al je me m5: pop si jmp kaka me: mov ax,4c00h int 21h kaka: ret compare endp mycode ends end start |
![]() |
![]() |
![]() |
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
работа с текстом с++ | Dawka1305 | Помощь студентам | 1 | 31.01.2011 21:07 |
Работа с текстом. | J0n1cK | Помощь студентам | 1 | 30.05.2009 15:19 |
Работа с текстом. | J0n1cK | Паскаль, Turbo Pascal, PascalABC.NET | 4 | 09.05.2009 00:29 |
работа с текстом... | Poll | Помощь студентам | 5 | 23.01.2009 11:43 |
Работа с текстом | vinimixer | Общие вопросы Delphi | 0 | 07.11.2008 21:19 |