powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вопрос по Assembler
14 сообщений из 14, страница 1 из 1
Вопрос по Assembler
    #38173045
fuzz
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Друзья !есть такая задачка:Задан массив А из N чисел. Преобразовать этот массив так, чтобы сначала шли четные числа, а потом – нечетные.Сам Assemblerom занимаюсь недавно,поэтому подзастрял. как реализовать данную штуку?
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38173059
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fuzz,

ассемблер или бейсик - это вторично.

отсортировать любым алгоритмом. сравнение элементов массива- чётное всегда меньше нечётного
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38174062
alex_k
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилчётное всегда меньше нечётного
это неверно :)
например, 10 больше 9ти.
И вообще сравнение чисел мне кажется неверным подходом.

Можно сделать два прохода по массиву и отобрать в первом четные (типа этого AND EAX,1; JZ XXX;), во втором нечетные.

Можно в один проход, заполняя результирующий массив с двух сторон двумя счетчиками. С начала складывать четные, с конца нечетные. Так будет быстрее, наверное.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38174102
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
alex_kэто неверно :)
например, 10 больше 9ти.

на множестве можно задавать разные отношения порядка
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38174863
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fuzzДрузья !есть такая задачка:Задан массив А из N чисел. Преобразовать этот массив так, чтобы сначала шли четные числа, а потом – нечетные.Сам Assemblerom занимаюсь недавно,поэтому подзастрял. как реализовать данную штуку?
Лично я, пожалуй, сделал бы так:

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
установить индексы (esi и edi, например) на начало и конец массива соответственно
цикл:
пока esi указывает на чётное, увеличить esi
пока edi указывает на нечётное, уменьшить edi
если edi < esi, выйти
поменять значения местами
повторить цикл

Обмен значениями целесообразно делать через xor.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38174872
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Изопропилотсортировать любым алгоритмом. сравнение элементов массива- чётное всегда меньше нечётного
Это хороший подход для случая, когда алгоритм сортировки уже есть и может быть легко использован. Когда его надо писать руками - я бы не стал возиться с общим случаем.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38174926
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Я не понимаю зачем вы все хотите что-то сортировать? Здесь стоит задача просто
преобразовать массив разбив его на два подмассива с обменом. И дополнительных массивов
создавать не нужно. Всё по месту делается.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38175183
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonЯ не понимаю зачем вы все хотите что-то сортировать? Здесь стоит задача просто
преобразовать массив разбив его на два подмассива с обменом. И дополнительных массивов
создавать не нужно. Всё по месту делается.
это и есть сортировка :) , по месту что характерно, устойчивая
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38175223
Фотография mayton
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Стабильная всмысле?
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38175409
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
maytonСтабильная всмысле?
да, оба термина означают одно и то же
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38182010
Роман Уникальный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
По моему это тупая модификация пузырика с тем чтобы чётные кидались вверх или вниз а нечётные наобарот - других условий нет - значит это скорее
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38182013
Роман Уникальный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Уточнение я имею ввиду Exchange двух а не Move в другое место массива.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38182018
Роман Уникальный
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Извините такой ник дурацкий - думал логин будет.

Надо учесть что у элементов с одинаковой чётностью должно быть неравное положение - их порядок должен оставаться неизменным.
...
Рейтинг: 0 / 0
Вопрос по Assembler
    #38182127
Фотография Изопропил
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Роман УникальныйИзвините такой ник дурацкий - думал логин будет.

Надо учесть что у элементов с одинаковой чётностью должно быть неравное положение - их порядок должен оставаться неизменным.
это и есть устойчивая/стабильная сортировка
Роман УникальныйПо моему это тупая модификация пузырика
угу.
...
Рейтинг: 0 / 0
14 сообщений из 14, страница 1 из 1
Форумы / Программирование [игнор отключен] [закрыт для гостей] / Вопрос по Assembler
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]