Форум программистов, компьютерный форум, киберфорум
Наши страницы
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
MixaelMitre
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 22
1

Ввести в консоль строку, программа должна вывести в консоль слова из этого предложения в столбик

18.11.2014, 18:06. Просмотров 1041. Ответов 9
Метки нет (Все метки)

Доброго времени суток!
Задание: нужно ввести в консоль строку, а программа должна вывести в консоль слова из этого предложения в столбик

Пожалуйста найдите ошибку - у меня выводится не в столбик, а лесенкой
Если возможно подправьте код пожалуйста

Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
s_s segment stack "stack"
db 256 dup(?)
s_s ends
data segment
in_str db 80, 0, 82 dup ('$') ; буфер ввода
out_str db 128 dup('$')
test_out db "test", '$'
enter db 0dh,0ah,'$'
data ends
code segment
assume ss:s_s, cs:code, ds:data
START: mov ax, data
mov ds, ax ; Загрузить сегментный адрес данных
; Ввод строки
lea dx, in_str
mov ah, 0ah
int 21h;
 
xor cx,cx
mov ax,1
mov cl, byte ptr[in_str+1]
lea si, in_str+2
lea di, out_str
 
beg: 
push cx
mov dl, byte ptr[si]
cmp dl, ' '
jne _a
 
mov cl,al
inc al
mov word ptr[di], 0a0dh
add di, 2
 
begl: 
mov byte ptr[di], ' '
inc di
 loop begl
 sub di, 1
 
_a:
  mov byte ptr[di] , dl
   inc si
   inc di
   pop cx
   loop beg 
 
   lea dx, enter 
   mov ah, 09h
   int 21h
   
   lea dx, out_str
    mov ah, 09h
    int 21h
 
   
    mov ah, 0ah
    int 21h
 
 
quit: mov ax, 4C00h ; Код завершения 0
int 21h ; Выход в DOS
code ends
end START
0
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
18.11.2014, 18:06
Ответы с готовыми решениями:

Как вывести строку в консоль
Здрасьте всем кто смотрит,такая проблема:Есть пример из книги Владислава...

Задан символьный массив. Ввести с клавиатуры символ и вывести на консоль количество таких символов в массиве.
Помогите решить лабораторные: 1,Задан символьный массив. Ввести с...

Ввести строку с клавиатуры и вывести слова в обратном порядке
Вобщем задача стояла такая: Ввести с клавиатуры строку из слов, разделенных...

Есть программа которая сравнивает строки. Нужно вывести заданные строки и результат на консоль (TASM)
Есть программа которая сравнивает строки. Нужно вывести заданные строки и...

Ввести с клавиатуры строку и вывести слова начинающиеся на определенную букву
вроде бы написала код, но почему-то не работает( помогите, пожалуйста. Задача...

9
Полный 30h
Эксперт быдлокодинга
1533 / 446 / 61
Регистрация: 04.11.2010
Сообщений: 1,224
18.11.2014, 20:48 2
Лучший ответ Сообщение было отмечено tezaurismosis как решение

Решение

Цитата Сообщение от MixaelMitre Посмотреть сообщение
Пожалуйста найдите ошибку - у меня выводится не в столбик, а лесенкой
Assembler
1
2
3
4
5
begl: 
mov byte ptr[di], ' '
inc di
 loop begl
 sub di, 1
Вот твоя лесенка. Закоментируй и лестницы не будет.

Перенесённый пробел сам победишь?
1
MixaelMitre
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 22
19.11.2014, 13:23  [ТС] 3
Хм.. был бы премного благодарен, если вы поможете мне и в этом
0
Полный 30h
Эксперт быдлокодинга
1533 / 446 / 61
Регистрация: 04.11.2010
Сообщений: 1,224
19.11.2014, 14:30 4
MixaelMitre, а код закомментировать потом не надо будет?
1
MixaelMitre
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 22
19.11.2014, 16:54  [ТС] 5
не знаю как лучше сделать если честно

Добавлено через 1 час 40 минут
хм.. мне кажется что слово переносится вместе с пробелом, но как это исправить*
0
Полный 30h
Эксперт быдлокодинга
1533 / 446 / 61
Регистрация: 04.11.2010
Сообщений: 1,224
19.11.2014, 17:47 6
Цитата Сообщение от MixaelMitre Посмотреть сообщение
хм.. мне кажется что слово переносится вместе с пробелом, но как это исправить*
Может об этом проще спросить того кто писал программу?
1
MixaelMitre
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 22
19.11.2014, 18:09  [ТС] 7
вообще не проще, создатель программы оставил исходник и уехал на конференцию
а сдать программку желательно к завтрашнем дню
0
Полный 30h
Эксперт быдлокодинга
1533 / 446 / 61
Регистрация: 04.11.2010
Сообщений: 1,224
19.11.2014, 20:23 8
Цитата Сообщение от MixaelMitre Посмотреть сообщение
создатель программы оставил исходник и уехал на конференцию
а сдать программку желательно к завтрашнем дню
Какие безответственные люди попадаются, наделают ошибок в программе и на конференцию, а мы тут мучайся, ассемблер учи.
1
MixaelMitre
0 / 0 / 0
Регистрация: 19.10.2014
Сообщений: 22
19.11.2014, 21:13  [ТС] 9
отличный сарказм
0
Полный 30h
Эксперт быдлокодинга
1533 / 446 / 61
Регистрация: 04.11.2010
Сообщений: 1,224
20.11.2014, 00:04 10
Цитата Сообщение от MixaelMitre Посмотреть сообщение
отличный сарказм
Спасибо
1
20.11.2014, 00:04
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
20.11.2014, 00:04

Ввести строку. Вывести слова, содержащие букву «о» и количество таких слов
Здравствуйте, есть задание по написанию программы на ассемблере для консоли....

Программа не выводит в консоль
Запускаю ехе файл и ничего не происходит. ;Вывод чисел на экран монитора...

Резидентная программа.Возврат на консоль.
Доброго времени суток... Может кто подскажет или у кого-нибудь есть подходяший...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
10
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru