Assembler_odnomer_massive
Добавлено: 08 мар 2010, 17:34
Алгоритм нахождения и замены минимального числа в одномерном массиве на максимальное в этом же массиве.
Минимальное и максимальное найти смог, а перестановку сделать не могу.
При нахождении каждого из чисел приходится загружать эффективный адрес массива по отдельности,
т.е : при нахождении минимума - загрузка массива, эффективного адреса, к примеру, в SI, далее нахожу это минимальное число, сохраняю в регистре, допустим DX.
Далее опять загружаю массив по такой же схеме, нахожу максимум, сохраняю в другой регистр.
В третий раз - также загрузка массива и уже обмен минимум на максимум.
Пробовал работать с сохранением данных по в адресах, например:
минимум - в [BX], а максимум в [BP] - не выходит.
Может все эти действия нужно делать вместе при одной загрузке, в одном внешнем цикле разбитом на несколько циклов. Подскажите, кто знает.
Минимальное и максимальное найти смог, а перестановку сделать не могу.
При нахождении каждого из чисел приходится загружать эффективный адрес массива по отдельности,
т.е : при нахождении минимума - загрузка массива, эффективного адреса, к примеру, в SI, далее нахожу это минимальное число, сохраняю в регистре, допустим DX.
Далее опять загружаю массив по такой же схеме, нахожу максимум, сохраняю в другой регистр.
В третий раз - также загрузка массива и уже обмен минимум на максимум.
Пробовал работать с сохранением данных по в адресах, например:
минимум - в [BX], а максимум в [BP] - не выходит.
Может все эти действия нужно делать вместе при одной загрузке, в одном внешнем цикле разбитом на несколько циклов. Подскажите, кто знает.