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

Обсуждение

давно
Посетитель
7438
7205
21.12.2015, 18:42
общий
Адресаты:
Здравствуйте, покажите сначала, что у Вас самого получилось... Я подправлю, дополню...
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399339
5
21.12.2015, 19:01
общий
RD #40
WR 30
RD #10
WR 31
RD #0
WR #32
JS
WR 30
ADD #1
WR 30
RD 31
SUB #1
WR 1
JNZ
RD 32
OUT
HL
давно
Посетитель
7438
7205
21.12.2015, 19:04
общий
Адресаты:
Замечательно! Гляну, чуть позже
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399339
5
21.12.2015, 19:18
общий
Адресаты:
Хорошо, только мне к утру бы хорошо с этим разобраться
давно
Посетитель
399339
5
21.12.2015, 19:35
общий
Вот переделал, но все равно что то не то
init:
RD #50
WR 40
RD #10
WR R0
RD #0
WR R1
WR R2
RD @40
ADD #1
WR R1
main:
RD @40
SUB R1
JS cycle_end
rd R2
add #1
cycle_end:
RD 40
ADD #1
WR 40
JRNZ R0,main
JMP end
end:
RD R2
RD R2
OUT
HLT
давно
Посетитель
7438
7205
21.12.2015, 20:00
общий
это ответ
Здравствуйте, vivytpayt!
Комментарий напишу здесь:
L1:RD @R1+ ;читаем очередное значение с автоувеличением адреса
jns L3 ;неотрицательные пропускаем
WR R4 ;сохраняем в R4
RD R3 ;старый максимальный отрицательный
JZ L2 ;если нуль, то просто сохраняем
SUB R4 ;старый < нового ?
JNS L3 ;>= - ничего не делаем
L2: MOV R3,R4 ;сохраняем нового максимального отрицательного
L3: JRNZ R2,L1 ;по всем

Код:

RD #40
WR R1
RD #10
WR R2
RD #0
WR R3

L1:RD @R1+
jns L3
WR R4
RD R3
JZ L2
SUB R4
JNS L3
L2: MOV R3,R4
L3: JRNZ R2,L1
RD R3
OUT
HLT
5
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399339
5
21.12.2015, 20:46
общий
Адресаты:
Не могу понять в чем проблема, но что то идёт не так.
Прикрепленные файлы:
128739e15e7bc330a3486a55df245bb7.jpeg
давно
Посетитель
7438
7205
21.12.2015, 20:58
общий
Адресаты:
Сбрасывать в исходное состояние кто будет?
(Красная кнопочка "R" на окне "Процессор")
Вы продолжили работу после останова, вот программа и пошла дальше
Об авторе:
"Если вы заметили, что вы на стороне большинства, —
это верный признак того, что пора меняться." Марк Твен
давно
Посетитель
399339
5
21.12.2015, 21:06
общий
Адресаты:
Спасибо
давно
Посетитель
399312
19
24.12.2015, 22:14
общий
24.12.2015, 22:15
Адресаты:
Здравствуйте, простите пожалуйста, а можете нарисовать примерную блок-схему для этого примера (примерно такую же, как в прикрепленном скриншоте)? Мне бы к утру желательно. Спасибо заранее
Прикрепленные файлы:
1cbb9729ca8a493d1556ae3721fbe351.jpg
Форма ответа