Написать программу, на вход которой построчно подаются:
Натуральное число N — размер целочисленного массива, адрес которого должен быть равен 0x10010000 (начало области .data)
- Затем N целых чисел — элементы массива
Затем — неизвестное число пар целых чисел A, B: 0⩽A⩽B<N — индексы массива, по одному в строке
Конец ввода — пара целых чисел A, B: A>B, не учитывается
Для каждой пары A⩽B программа выводит наименьший элемент массива в диапазоне от A до B включительно, пробел, адрес элемента и перевод строки
В программе предусмотреть подпрограмму minaddr,
которой в a0 передаётся адрес массива, в a1 — A, в a2 — B,
а возвращает она в a0 — наименьшее значение массива в диапазоне, а в a1 — адрес элемента, где был найден минимум (если таких несколько, то с наименьшим индексом)
7 1 3 5 7 4 2 1 0 6 1 5 2 4 3 3 1 0
- 7 — количество элементов
- 1 3 5 7 4 2 1 — сами элементы
- 0 6 — первый диапазон, 1 5 — второй, 2 4 — третий, 3 3 — четвёртый
1 0 — конец ввода, потому что 1 > 0
Поскольку в этой программе массив всего один, он имеет право быть произвольного доступного размера (просто адрес в области .data, после которого пи пишем сколько хотим), плоская модель памяти это позволяет.
1 0x10010000 2 0x10010014 4 0x10010010 7 0x1001000c