Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.50/4: Рейтинг темы: голосов - 4, средняя оценка - 4.50
0 / 0 / 0
Регистрация: 08.09.2012
Сообщений: 8

Функция которая записывает в выходную строку слова длиной от 3 до 6: не выводится строка

27.12.2012, 22:07. Показов 744. Ответов 1
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
это код ассемблерной вставки в паскаль. функция которая записывает в выходную строку слова длиной от 3 до 6. все вроде отрабатывается но выходная строка почему-то выводится пустая
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
66
67
68
69
70
71
72
73
74
75
76
cseg segment
assume cs:cseg
public words
 
words proc far
push bp
mov bp,sp
sub sp,1
push ax
push bx
push cx
push dx
push si
push di
push es
mov si,[bp+6] ;адрес начала строки s1
les di,[bp+10] ;Буферная строка в стеке
mov CL,[si]
add si,1 ;- это адрес первого элемента строки
mov ch,0 ; В сх текущая длина строки
mov bx,0;Кол. переписанных символов
n equ byte ptr [bp-1]
mov n,0  ;длина одного слова
m2:
cmp byte ptr [si],' '
je m1
inc n
jmp m3
m1:cmp n,0
jne m4
m5: mov n,0
m3:inc si
loop m2
m4: mov al,n
mov n,0
cmp al,3
jl m2
cmp al,6
jg m2
mov dl,al
mov dh,0
push cx
mov ch,0
mov cl,al
mov ax,si
sub ax,dx
mov si,ax
m6: mov al,[si]
mov es:[di+1],al
inc di
inc si
inc bx
loop m6
mov byte ptr es:[di+1],' '
inc di
inc bx
pop cx
mov n,0
cmp cx,0
je ex
jmp m2
ex:les di,[bp+10]
mov [di],bl
add sp,1
pop bp
pop es
pop di
pop SI
pop dx
pop cx
pop bx
pop ax
ret 4
words endp
cseg ends
END
а вот вызов из паскаля

Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
program lab10;
uses crt;
type t_str=string[20];
var s1,s2:t_str;
{$L 4.obj}
{$F+}
Function words(var str:t_str):t_str; external;
{$F-}
begin
clrscr;
writeln('Enter the string :');
readln(s1);
s2:=words(s1);
write('New string :',s2);
readln;
end.
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
27.12.2012, 22:07
Ответы с готовыми решениями:

Составить программу, которая бы разбивала текст на строки длиной в два слова. Перенос на новую строку осуществить на месте пробела
Составить программу, которая бы разбивала текст на строки длиной в два слова. Перенос на новую строку осуществить на месте пробела

Переписать в выходную строку слова из входной строки в порядке возрастания их длины
.Пожалуйста помогите решить задачу Срочно нужно было Переписать в выходную строку слова из входной строки в порядке возрастания их...

Переписать в выходную строку слова из входной строки в порядке возрастания их длины.
Помогите с решенеие кому не сложно в Visual C++, пожалуйста. 1. Интервал между минимальным и максимальным значениями элементов...

1
 Аватар для Крюгер
40 / 60 / 8
Регистрация: 16.11.2012
Сообщений: 460
Записей в блоге: 7
27.12.2012, 22:20
maggie93, readln; в самом конце зачем? он ведь вывел инфу и все зачем еще считывать?
Цитата Сообщение от maggie93 Посмотреть сообщение
Assembler
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
program lab10;
uses crt;
type t_str=string[20];
var s1,s2:t_str;
{$L 4.obj}
{$F+}
Function words(var str:t_str):t_str; external;
{$F-}
begin
clrscr;
writeln('Enter the string :');
readln(s1);
s2:=words(s1);
write('New string :',s2);
readln;
end.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
27.12.2012, 22:20
Помогаю со студенческими работами здесь

Занести в выходную строку все слова исходной, в которых нет повторяющихся букв
Написал код #include "stdafx.h" #include<iostream> using namespace std; int main() { using namespace std; char...

Функция, которая сформировывает строку, в которой слова идут по алфавиту
Здравствуйте. Помогите пожалуйста. на C++ Написать функцию, которая сформировывает строку, в которой слова идут по алфавиту

Написать программу которая ищет слова с определенной буквой и записывает в другой файл и при этом удаляет повторяющиеся слова
Дорогие форумчане помогите написать программу. Написать программу которая ищет слова с определенной буквой и записывает в другой файл и...

Функция,которая создаёт новую строку,в которой удалены все слова минимальной длины
Здравствуйте. Помогите пожалуйста. на C++ Написать функцию,которая создаёт новую строку,в которой удалены все слова минимальной длины

Если функция находит в строке число, то вместо него она переписывает в выходную строку соответствующее по счету слово из входной строки
Функция переписывает строку. Если она находит в строке число, то вместо него она переписывает в выходную строку соответствующее по счету...


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

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Новые блоги и статьи
Модель заражения группы наркоманов
alhaos 17.04.2026
Условия задачи сформулированы тут Суть: - Группа наркоманов из 10 человек. - Только один инфицирован ВИЧ. - Колются одной иглой. - Колются раз в день. - Колются последовательно через. . .
Мысли в слух. Про "навсегда".
kumehtar 16.04.2026
Подумалось тут, что наверное очень глупо использовать во всяких своих установках понятие "навсегда". Это очень сильное понятие, и я только начинаю понимать край его смысла, не смотря на то что давно. . .
My Business CRM
MaGz GoLd 16.04.2026
Всем привет, недавно возникла потребность создать CRM, для личных нужд. Собственно программа предоставляет из себя базу данных клиентов, в которой можно фиксировать звонки, стадии сделки, а также. . .
Знаешь почему 90% людей редко бывают счастливыми?
kumehtar 14.04.2026
Потому что они ждут. Ждут выходных, ждут отпуска, ждут удачного момента. . . а удачный момент так и не приходит.
Фиксация колонок в отчете СКД
Maks 14.04.2026
Фиксация колонок в СКД отчета типа Таблица. Задача: зафиксировать три левых колонки в отчете. Процедура ПриКомпоновкеРезультата(ДокументРезультат, ДанныеРасшифровки, СтандартнаяОбработка) / / . . .
Настройки VS Code
Loafer 13.04.2026
{ "cmake. configureOnOpen": false, "diffEditor. ignoreTrimWhitespace": true, "editor. guides. bracketPairs": "active", "extensions. ignoreRecommendations": true, . . .
Оптимизация кода на разграничение прав доступа к элементам формы
Maks 13.04.2026
Алгоритм из решения ниже реализован на нетиповом документе, разработанного в конфигурации КА2. Задачи, как таковой, поставлено не было, проделанное ниже исключительно моя инициатива. Было так:. . .
Контроль заполнения и очистка дат в зависимости от значения перечислений
Maks 12.04.2026
Алгоритм из решения ниже реализован на примере нетипового документа "ПланированиеПерсонала", разработанного в конфигурации КА2. Задача: реализовать контроль корректности заполнения дат назначения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru