Отправляет email-рассылки с помощью сервиса Sendsay
  Все выпуски  

Ассемблер? Это просто! Учимся программировать


РАССЫЛКИ ПОРТАЛА RUSFAQ.RU

/ КОМПЬЮТЕРЫ И ПО / Языки программирования / Assembler (Ассемблер)

Выпуск № 749
от 13.05.2007, 16:35

Администратор:Калашников О.А.
В рассылке:Подписчиков: 389, Экспертов: 32
В номере:Вопросов: 3, Ответов: 7


Вопрос № 85886: Извините за дублирование, но предыдущий акк заблокировали( Здравствуйте Дорогие Эксперты! У меня вопрос. Мне нужно в программе вывести на экран слова в столбик, учитывая, что я ввёо их ранее. Т.е., как я понял, нужно, чтобы программа находила...
Вопрос № 85998: Подскажите пожалуйста, как сделать программу для ввода с клавиатуры шестизначного числа в 2-ой системе счисления, при этом, сформировав значение этого числа в памяти и произвести вывод этого числа на экран дисплея....
Вопрос № 86011: Программу надо решеть с использованием Int21h помогите ктонить!! Ввести с клавиатуры строку. Ввести с клавиатуры коротенькую строку - шаблон. Найти шаблон во введенной строке. Вывести на экран “ДА”, если шаблон есть и “НЕТ”, если нет. ...

Вопрос № 85.886
Извините за дублирование, но предыдущий акк заблокировали(
Здравствуйте Дорогие Эксперты!
У меня вопрос. Мне нужно в программе вывести на экран слова в столбик, учитывая, что я ввёо их ранее. Т.е., как я понял, нужно, чтобы программа находила в символах что я ввожу код пробела и после того, как его нашла, курсор переходил на другую строку и выводил слово?

Вот полный текст: ввести с клавы строку, сосотоящую из нескольких слов. Вывести на экран каждое слово с новой строки, т.е. в столбик.

Заранее спасибо за помощь
Отправлен: 07.05.2007, 16:41
Вопрос задал: Vasia_Mamedov (статус: Посетитель)
Всего ответов: 3
Мини-форум вопроса >>> (сообщений: 2)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Vasia_Mamedov!

Смотрите приложение.
Вывод происходит в режиме телетайпа(функция 29h)
Удачи!

Приложение:

---------
И только наступив на грабли мы преобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Студент)
Ответ отправлен: 07.05.2007, 20:10

Отвечает: P@lach
Здравствуйте, Vasia_Mamedov!
Вот прога! :)
cseg segment
assume cs:cseg,ds:cseg,es:cseg,ss:cseg

org 100h
_code:
mov dx,offset mes1
mov ah,9
int 21h
mov bx,offset st_r
ent_str: ;Ввод символов
mov ah,10h
int 16h
cmp al,0dh
je end_str;Если нажали Enter то выходим из ввода символов
xor ah,ah
mov byte ptr [bx],al
inc bx
mov dl,al
mov ah,2
int 21h
jmp ent_str
end_str:
mov dx,offset mes2
mov ah,9
int 21h
mov bx,offset st_r
out_str1:;вывод слов на новой строке
mov byte ptr dl,[bx]
cmp dl,0
je exit
cmp dl,20h
je new_str
mov ah,2
int 21h
inc bx
jmp out_str1
new_str:
mov dx,offset mes2
mov ah,9
int 21h
inc bx
jmp out_str1
exit:
ret
mes1 db 'Enter string:',0dh,0ah,'$';Введите строку
mes2 db 0dh,0ah,'$'
st_r db 255 dup(0)
cseg ends
end _code
Ответ отправил: P@lach (статус: 3-ий класс)
Ответ отправлен: 08.05.2007, 11:20

Отвечает: An42
Здравствуйте, Vasia_Mamedov!
Да, вы правильно поняли
пример ниже
Удачи

Приложение:

Ответ отправил: An42 (статус: 2-ой класс)
Ответ отправлен: 08.05.2007, 16:10


Вопрос № 85.998
Подскажите пожалуйста, как сделать программу для ввода с клавиатуры шестизначного числа в 2-ой системе счисления, при этом, сформировав значение этого числа в памяти и произвести вывод этого числа на экран дисплея.
Отправлен: 08.05.2007, 13:29
Вопрос задал: Ketor (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 0)

Отвечает: Зенченко Константин Николаевич
Здравствуйте, Ketor!

т.к. Вы не указали в какой виде выводить результат в приложении программа которая вводит 6(или меньше если нажмете ВВОД) цифр 2-ой системы и потом выводит в 2-ой,16-ой и 10-ой системах.
Если в строке start: mov cx,6 вместо 6 поставить 16, то можно переводить числа в диапазоне от 0 до 65535 вместо 6:63
Удачи!

Приложение:

---------
И только наступив на грабли мы преобретаем драгоценный опыт!

Ответ отправил: Зенченко Константин Николаевич (статус: Студент)
Ответ отправлен: 08.05.2007, 17:00

Отвечает: An42
Здравствуйте, Ketor!
В программе пояснения думаю, что будет понятно
Удачи

Приложение:

Ответ отправил: An42 (статус: 2-ой класс)
Ответ отправлен: 09.05.2007, 16:51


Вопрос № 86.011
Программу надо решеть с использованием Int21h помогите ктонить!!

Ввести с клавиатуры строку. Ввести с клавиатуры коротенькую строку - шаблон. Найти шаблон во введенной строке. Вывести на экран “ДА”, если шаблон есть и “НЕТ”, если нет.
Отправлен: 08.05.2007, 14:44
Вопрос задал: Makes (статус: Посетитель)
Всего ответов: 2
Мини-форум вопроса >>> (сообщений: 1)

Отвечает: P@lach
Здравствуйте, Makes!
Вот прога:
cseg segment
assume cs:cseg,ds:cseg,es:cseg,ss:cseg
org 100h
_code:
mov dx,offset mes1
mov ah,9
int 21h
mov bx,offset st_r1
out_str1:;Ввод 1-ой строки
mov ah,10h
int 16h
cmp al,0dh
je end_str1
inc j;длина 1-ой строки
mov byte ptr [bx],al
inc bx
mov dl,al
mov ah,2
int 21h
jmp out_str1
end_str1:;закончили ввод 1-ой строки
mov dx,offset mes2
mov ah,9
int 21h
mov bx,offset st_r2
out_str2:;Ввод 2-ой строки (шаблона)
mov ah,10h
int 16h
cmp al,0dh
je end_str2
inc i;Длина 2-ой строки
mov byte ptr [bx],al
inc cx
mov dl,al
mov ah,2
int 21h
jmp out_str2
end_str2:
mov di,offset st_r1
mov si,offset st_r2
mov byte ptr al,[si]
mov byte ptr ah,[di]
cmp_1:
push di
cmp al,ah
jne cmp_1_con
cmp_2:
inc si
mov byte ptr al,[si]
cmp al,0
je ok
inc di
mov byte ptr ah,[di]
cmp al,ah
je cmp_2
cmp_1_con:
pop di
inc di
mov byte ptr ah,[di]
cmp ah,0
je error
mov si,offset st_r2
mov byte ptr al,[si]
jmp cmp_1
ok:
mov dx,offset mes3
mov ah,9
int 21h
jmp short exit
error:
mov dx,offset mes4
mov ah,9
int 21h
exit:
int 20h
mes1 db 'Enter string:',13,10,'$'
mes2 db 13,10,'Enter other string:',13,10,'$'
mes3 db 13,10,'Yes$'
mes4 db 13,10,'No$'
st_r1 db 255 dup(0)
st_r2 db 255 dup(0)
i db 0
j db 0
cseg ends
end _code
Ответ отправил: P@lach (статус: 3-ий класс)
Ответ отправлен: 08.05.2007, 17:14

Отвечает: An42
Здравствуйте, Makes!
Высылаю программу по данному вопросу
в ней комментарии должно быть понятно
Удачи

Приложение:

Ответ отправил: An42 (статус: 2-ой класс)
Ответ отправлен: 08.05.2007, 17:52


Отправить вопрос экспертам этой рассылки

Приложение (если необходимо):

* Код программы, выдержки из закона и т.п. дополнение к вопросу.
Эта информация будет отображена в аналогичном окне как есть.

Обратите внимание!
Вопрос будет отправлен всем экспертам данной рассылки!

Для того, чтобы отправить вопрос выбранным экспертам этой рассылки или
экспертам другой рассылки портала RusFAQ.ru, зайдите непосредственно на RusFAQ.ru.


Форма НЕ работает в почтовых программах The BAT! и MS Outlook (кроме версии 2003+)!
Чтобы отправить вопрос, откройте это письмо в браузере или зайдите на сайт RusFAQ.ru.


© 2001-2007, Портал RusFAQ.ru, Россия, Москва.
Авторское право: ООО "Мастер-Эксперт Про"
Email: support@rusfaq.ru, тел.: +7 (926) 535-23-31
Хостинг: "Московский хостер"
Поддержка: "Московский дизайнер"
Авторские права | Реклама на портале
Версия системы: 4.52 от 02.05.2007
Яндекс Rambler's Top100

В избранное