Форум программистов, компьютерный форум, киберфорум
Assembler для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.77/26: Рейтинг темы: голосов - 26, средняя оценка - 4.77
2 / 2 / 0
Регистрация: 09.12.2011
Сообщений: 35
1

Дана строка из 15 символов. Разработать программу, осуществляющую круговую перестановку части букв исходной строки

17.05.2012, 20:58. Показов 4627. Ответов 8
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Дана строка из 15 символов. Разработать программу, осуществляющую круговую перестановку части букв исходной строки.
Задание:
с первого по двенадцатый по двенадцатый по два символа

Пример программы
Дана строка из четырех символов. Необходимо осуществить круговую перестановку символов строки.
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
STACKSG SEGMENT PARA STACK
DB 64 DUP (?)
STACKSG ENDS
DATASG  SEGMENT PARA ’DATA’
STR1    DB1234’
STR2    DB 4 DUP (?)
DATASG  ENDS
CODESG  SEGMENT PARA ’CODE’
ASSUME CS:CODESG, DS:DATASG, SS:STACKSG
ENTRY   PROC FAR
; Стандартная часть
PUSH DS
SUB AX,AX
PUSH AX
MOV AX,DATASG
MOV DS,AX
MOV DX,4        ; общее количество перестановок
; Переслать первый символ из STR1 в  STR2
M1: LEA DI,STR1 ; загрузить в DI смещение
; первого байта из STR1
LEA SI,STR2 ; загрузить в SI смещение
; первого байта из STR3
MOV CX,3
MOV AL,[DI] ; переслать в AL первый байт из STR1
MOV [SI]+3,AL   ; переслать AL в последний байт из STR2
INC DI      ; DI=DI+1 – следующий символ из STR1
; переслать остаток строки STR1 в STR2
M2: MOV AL,[DI] ; в AL следующий символ из STR1
MOV [SI],AL ; переслать AL в STR2
INC DI      ; DI=DI+1 – следующий символ из STR1
INC SI      ; SI=SI+1 - следующий символ из STR2
LOOP M2     ; перейти на метку M2
; переслать STR2 в STR1
LEA DI,STR1
LEA SI,STR2
MOV CX,4
M3: MOV AL,[SI]
MOV [DI],AL
INC DI 
INC SI
LOOP M3
 
DEC DX
CMP DX,0        ; Все перестановки сделаны?
JNE M1      ; Нет - идти на M1
RET
ENTRY   ENDP
CODESG  ENDS
END ENTRY
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
17.05.2012, 20:58
Ответы с готовыми решениями:

Разработать программу, осуществляющую круговую перестановку с первого по восьмой символ исходной строки
Всем привет. Пошел учиться на программиста в универ в свои 30 лет и очень тяжко дается эта...

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

Дана символьная строка S. Скопировать первые N символов из исходной строки в новую. N вводится с клавиатуры
Дана символьная строка S. Скопировать первые N символов из исходной строки в новую. N вводиться с...

Дана строка символов.. Разработать программу расчета...
Разработать программу расчета выручки за проданные билеты в кинозал установив зависимость цены...

8
116 / 136 / 0
Регистрация: 15.04.2012
Сообщений: 1,031
19.05.2012, 09:40 2
yamaschi, как я понял все сдвигается и последний элемент в буфер вылетает. Затем в начало массива заносится значение из буфера.
0
2 / 2 / 0
Регистрация: 09.12.2011
Сообщений: 35
19.05.2012, 09:59  [ТС] 3
Скорей всего так и есть....
0
2 / 2 / 0
Регистрация: 09.12.2011
Сообщений: 35
24.05.2012, 00:30  [ТС] 4
Люди добрые!!!!!Помогите пожалуйста сделать эту лабу))))))
0
116 / 136 / 0
Регистрация: 15.04.2012
Сообщений: 1,031
24.05.2012, 06:31 5
Цитата Сообщение от yamaschi Посмотреть сообщение
Помогите пожалуйста сделать эту лабу
Что значит "сделать"?
0
650 / 337 / 37
Регистрация: 04.04.2012
Сообщений: 886
24.05.2012, 10:34 6
Объясните задачу проще и желательно с примерами.

Есть строка: 123456789876543. При каждом нажатии клавиши на клавиатуре переставить символы по кругу? Результат после первого нажатия: 234567898765431, после второго 345678987654312?
0
2 / 2 / 0
Регистрация: 09.12.2011
Сообщений: 35
24.05.2012, 17:56  [ТС] 7
AFP,в начале темы я написал пример,а ты наверно правильно говоришь,так и должна она работать.
0
Клюг
7675 / 3190 / 382
Регистрация: 03.05.2011
Сообщений: 8,380
24.05.2012, 18:24 8
Допилить немножко: https://www.cyberforum.ru/post3035677.html
1
2 / 2 / 0
Регистрация: 09.12.2011
Сообщений: 35
24.05.2012, 18:57  [ТС] 9
Charles Kludge спасибо!!!!Посмотрю его, может че получится)))
0
24.05.2012, 18:57
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
24.05.2012, 18:57
Помогаю со студенческими работами здесь

Дана строка S и натуральное число N. Создать новую строку, включив в нее все слова из N букв исходной строки
Дана строка S и натуральное число N. Cформировать новую строку, включив в нее все N-буквенные слова...

Дана строка S и натуральное число N. Создать новую строку, включив в нее все слова из N букв исходной строки
Дана строка S и натуральное число N. Cформировать новую строку, включив в нее все N-буквенные слова...

Дана строка из 20 слов. Сформировать строку, составленную из последних букв всех слов исходной строки
Задача: дана строка из 20 слов (или любого другого числа). Сформировать строку, составленную из...

Дана строка символов, состоящая из букв и цифр. Удалить из строки все цифры
Нужна прога... Дана строка символов, состоящая из букв и цифр. Удалить из строки все цифры. Буду...


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

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru