Консультация № 188496
21.12.2015, 11:35
0.00 руб.
21.12.2015, 15:41
0 6 1
Здравствуйте, уважаемые эксперты! Прошу вас помочь с составлением программы для CompModel. Требуется из массива чисел найти номер минимального числа. Массив задается пользователем, 10 значений начиная с адреса 40.
Заранее - большое спасибо!

Обсуждение

давно
Посетитель
7438
7205
21.12.2015, 15:45
общий
Адресаты:
Вы хоть пытались самостоятельно что-то сделать?
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399340
2
21.12.2015, 18:31
общий
[q=7438][/q]
Игорь Витальевич, конечно пытался. Если бы смог сделать, не обратился бы сюда.
давно
Посетитель
7438
7205
21.12.2015, 18:39
общий
Адресаты:
Так выкладывайте сюда, что получилось. Будет и мне интересно посмотреть на ход Вашей мысли,
и Вам полезно увидеть свои ошибки...
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
7438
7205
21.12.2015, 18:40
общий
Адресаты:
Адресата сообщения надо выбирать не цитатой, а из списка "Кому"
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399340
2
21.12.2015, 19:33
общий
Адресаты:

RD #100
WR 70
WR 82 <
RD #10
WR 71
RD 100
WR 72

M1: RD 71
SUB #1
WR 71
JNZ M2
out
hlt
M2: RD 70
ADD #1
WR 70

RD 72
SUB @70
JS M1

RD 70
WR 82

RD @70
WR 72
jmp M1
давно
Посетитель
7438
7205
21.12.2015, 20:38
общий
это ответ
Здравствуйте, ivn666!
Вот программа. Комментарии пишу отдельно
RD @R1+ ;читаем первого, автоувеличение адреса
WR R4 ;сохраняем, как минимальное
MOV R3,R1 ;и его адрес + 1 !
JMP L3 ;на уменьшение счетчика

L1:RD @R1+ ;по всем остальным
WR R5 ;сохраним очередного
SUB R4 ;текущий > минимального
JNS L3 ;да - на уменьшение счетчика
MOV R4,R5 ;нет - нашли нового минимального
MOV R3,R1 ;и его адрес +1
L3: JRNZ R2,L1 ;циклим по всем
RD R3 ;адрес минимального +1
sub #40 ;получаем номер минимального, начиная с 1!
[code h=200]
RD #40
WR R1
RD #10
WR R2

RD @R1+
WR R4
MOV R3,R1
JMP L3

L1:RD @R1+
WR R5
SUB R4
JNS L3
MOV R4,R5
MOV R3,R1
L3: JRNZ R2,L1
RD R3
sub #40
OUT
HLT
[/code]
5
Спасибо!
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
Форма ответа