0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
||||||
1 | ||||||
Сортировка массива слов02.11.2017, 20:07. Показов 3115. Ответов 10
Доброго времени суток, сортирую массив слов (dw) в ДосБоксе, но сама сортировка как-то странно работает, вот я в конце в ax заношу 5 элемент, и там должно быть 5, но мне показывает 3, что не так?
0
|
02.11.2017, 20:07 | |
Ответы с готовыми решениями:
10
Сортировка массива слов по возрастанию Сортировка массива слов Сортировка массива слов Сортировка слов из массива по алфавиту |
Модератор
|
|
02.11.2017, 21:21 | 2 |
Наверное, потому, что в строках 17 и 18 si это не индекс массива, а смещение относительно начала массива. А размер элемента - напомню - равен 2 байта.
Возникает вопрос - на какой элемент указывает Array[si] при si=4?
1
|
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
||||||
03.11.2017, 08:50 [ТС] | 3 | |||||
ФедосеевПавел, как же я затупил, на 2 элемент, если с 0 брать
Добавлено через 11 часов 20 минут ФедосеевПавел, а можно еще вопрос, если я хочу ввести элементы массива для сортировки, вызывая из асма функцию Си программы для ввода массива, вот к примеру у меня код на Си. Как мне вызвать функцию "Enter"? И нужно ли мне, то что буду вводить, записать еще в массив в самом асме, если хочу отсортировать после ввода?
0
|
Модератор
|
|
03.11.2017, 20:50 | 4 |
Это си для Windows или для DOS?
0
|
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
|
03.11.2017, 21:11 [ТС] | 5 |
ФедосеевПавел, и тасм и си под дос, надо как-то их объединить и оба компильнуть через bcc, но я не понимаю как
0
|
Модератор
|
||||||
03.11.2017, 21:20 | 6 | |||||
Если встроенный ассемблер, попробуйте
А вместе их объединить - поищите "раздельная компиляция bcc". Я когда-то прописывал это в окне Project среды bcc 3.1. Но детали уже забыл.
0
|
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
|
03.11.2017, 21:25 [ТС] | 7 |
ФедосеевПавел, а если мне нужно именно с ассемблера вызывать Си функции? Да и проблема не в самой компиляции, а в том как вызвать функцию ввода массива в Си, потом в асм программе отсортировать , опять вызвать си и вывести
0
|
Модератор
|
||||||
03.11.2017, 21:35 | 8 | |||||
Кажется так (это в файле с ассемблерным кодом)
0
|
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
|
03.11.2017, 21:40 [ТС] | 9 |
ФедосеевПавел, а если я после этого его этим же пузырьком захочу отсортировать, мне его нужно в самом асме еще в массив записать?
0
|
Модератор
|
||||||
03.11.2017, 21:54 | 10 | |||||
Сообщение было отмечено DavidJarr как решение
Решение
Нет.
У меня нет bcc, поэтому всё без проверки и в общих фразах. Как объявлять внешние процедуры и переменные - гляньте в руководстве на tasm. Добавлено через 3 минуты Для внешних меток в каких-то случаях используют extrn, а в каких-то extern.
1
|
0 / 0 / 2
Регистрация: 17.08.2017
Сообщений: 118
|
|
03.11.2017, 22:25 [ТС] | 11 |
ФедосеевПавел, понял, спасибо за ответ
0
|
03.11.2017, 22:25 | |
03.11.2017, 22:25 | |
Помогаю со студенческими работами здесь
11
Сортировка массива слов по алфавиту Сортировка слов из массива по алфавиту Сортировка массива слов по первой букве Сортировка массива слов в алфавитном порядке Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |