Помощь - Поиск - Пользователи - Календарь
Полная версия: списки
Форум «Всё о Паскале» > Современный Паскаль и другие языки > Ассемблер
mapkovka
ПРивет всем! Помагите пожалуйста решить две задачки.
1)
С клавиатури вводяться 20 символов. Если вводиться недопустимый символ(не цыфра, не буква), то вывести на екран сообщение об ошибке. В противном случае упорядочить буквы по алфавиту и вывести их в обратном порядке.
2)
Дана сткока из n-символов. Вводится еще одна строка. Вывести на екран символы, что встречаются в обеих строках.
Спасибо . no1.gif
mapkovka
Помагите со второй - первую я уже зделал
wacko.gif
Bokul
Если совпавший символ повторяется, всеровно выводить?

Например строки
Цитата
'a'

и
Цитата
' abaaba'

Результат должен быть
Цитата
'aaaa'

или
Цитата
'a'

blink.gif
mapkovka
Просто а
FreeMan
Код
str1 db 'asdfg',0
str2 db 'aaass',0
rez db 20h dup(0)
...
;sna4ala ubrat povtoreniya v str1
mov esi, str1;
push esi
.lp:
pop esi
lodsb
test al,al
je .exit
push esi
mov bl,al
.loop:
lodsb
test al,al
je .lp
cmp bl,al
jne .loop
mov [esi],1
jmp .loop
.exit:
;str1 bez povtorenii

mov esi,str1
mov edi,rez
push esi
.lll:
pop esi
lodsb
test al,al
je. vivod
push esi
mov bl,al
mov esi,str2
.loop1:
lodsb
test al,al
je .lll
cmp bl,al
jnz .loop1
stosb
jmp .loop1
.vivod:
; v rez - stroka povtorov.
...

чтото типа этого писал без компилера, синтаксис ФАСМ
-mapkovka-
Может у кого-то появится желание порешать еще кое-что, потому что я меня появилось новое задание
1)
Организация и вызов подпрограмы с передачей параметров и стек.
Найти среднее арифметическое 4-х однозначных беззнаковых десятичных числа, которые вводятся с клавиатуры. Значение вывести на екран.
2)Использывать фенкции прерывания 21h DOC для ввода с клавиатуры (01h, 06h, 0Аh, 0Вh, 0Сh) и вывода на екран (02h, 06h, 09h) решить следующие задачи:
- организовать посимвольный вывод (с временной задержкой) 1/4 строки введеной с клавиатуры.

Всем спасибо!

yes2.gif
Это текстовая версия — только основной контент. Для просмотра полной версии этой страницы, пожалуйста, нажмите сюда.