22.09.2017, 10:59 [+3 UTC]
в нашей команде: 2 125 чел. | участники онлайн: 6 (рекорд: 21)

:: РЕГИСТРАЦИЯ

:: консультации

:: задать вопрос

:: все разделы

:: правила

:: новости

:: участники

:: доска почёта

:: форум

:: блоги

:: поиск

:: статистика

:: наш журнал

:: наши встречи

:: наша галерея

:: отзывы о нас

:: поддержка

:: руководство

Версия системы:
7.41 (25.02.2017)

Общие новости:
23.02.2017, 09:51

Форум:
21.09.2017, 12:28

Последний вопрос:
22.09.2017, 10:31

Последний ответ:
22.09.2017, 09:33

Последняя рассылка:
21.09.2017, 21:15

Писем в очереди:
0

Мы в соцсетях:

Наша кнопка:

RFpro.ru - здесь вам помогут!

Отзывы о нас:
23.10.2009, 11:20 »
LanK
Отличный обзор, теперь есть из чего выбирать. СПАСИБО! [вопрос № 173545, ответ № 255742]
08.07.2010, 14:11 »
Massimo
Большое спасибо Вам за помощь!!! [вопрос № 179438, ответ № 262461]

РАЗДЕЛ • Assembler

Создание программ на языке Assembler.

[администратор рассылки: Лысков Игорь Витальевич (Старший модератор)]

Лучшие эксперты в этом разделе

Зенченко Константин Николаевич
Статус: Модератор
Рейтинг: 250
Лысков Игорь Витальевич
Статус: Старший модератор
Рейтинг: 239
quirck
Статус: 1-й класс
Рейтинг: 30

Перейти к консультации №:
 

Консультация онлайн # 189821
Раздел: • Assembler
Автор вопроса: KORSAJan (Посетитель)
Отправлена: 26.09.2016, 08:44
Поступило ответов: 1

Уважаемые эксперты! Пожалуйста, ответьте на вопрос:

Три массива в памяти заданы начальными адресами и длинами. Вычис-
лить и вывести на устройство вывода среднее арифметическое парамет-
ров этих массивов.Параметр массивов это номер Количество отрицательных чисел; n = 16;
Не могу понять почему у меня под-программа бесконечно выполняется,как буд-то бесконеный цикл задал

Приложение:

Состояние: Консультация закрыта

Ответ # 274110 от Лысков Игорь Витальевич (Старший модератор)

Здравствуйте, KORSAJan!
Ошибки:
1) длина массива равна 16, и начало следующего было меньше, чем начало массива+16
2) зацикливание было из-за того, что стояла команда условного перехода jns 12. Был записан явный адрес 12 (не метка!)
Кстати, должен был быть переход на декремент счетчика цикла (а не на метку начала цикла L2)
В мини-форуме записано js L1, что тоже, сами понимаете, неправильно. Нам же надо считать отрицательные числа. И переход не туда.
3) обнуление переменной по адресу 49 надо делать в начале подпрограммы M
4) совершенно нет необходимости сохранять считанные значения. Нам надо знать только их знак

Код (Assembler) :: выделить код
rd #85
wr r1
rd #16
wr r2
call m
wr r6
rd #110
wr r1
rd #16
wr r2
call m
wr r7
rd #130
wr r1
rd #16
wr r2
call m
add r7
add r6
div #3
out
hlt
m: rd #0
wr 49
l2: rd @r1+
jns l3
rd 49
add #1
wr 49
l3: jrnz r2,l2
rd 49
ret


Консультировал: Лысков Игорь Витальевич (Старший модератор)
Дата отправки: 28.09.2016, 11:03

5
Большое спасибо,что помогли ) а то все выходные мучался сидел
-----
Дата оценки: 28.09.2016, 11:32

Рейтинг ответа:

0

[подробно]

Сообщение
модераторам

Отправлять сообщения
модераторам могут
только участники портала.
ВОЙТИ НА ПОРТАЛ »
регистрация »

Мини-форум консультации № 189821
KORSAJan
Посетитель

ID: 400192

# 1

= общий = | 28.09.2016, 10:33 | цитировать цитировать  | профиль профиль  |  отправить письмо в личную почту пейджер
Лысков Игорь Витальевич:

Игорь Витальевич,помогите пожалуйста не могу подпрограмму составить только
M:
RD @R1+
JMP L3
L1:RD @R1+
JS L1
WR R3
ADD #1
L3: JRNZ R2,L1
RET
не могу понять как обнулить ячейку перед входом в п/п в которой и хотел организовать счетчик...

 

Возможность оставлять сообщения в мини-форумах консультаций доступна только после входа в систему.
Воспользуйтесь кнопкой входа вверху страницы, если Вы зарегистрированы или пройдите простую процедуру регистрации на Портале.

Яндекс Rambler's Top100

главная страница | поддержка | задать вопрос

Время генерирования страницы: 0.13836 сек.

© 2001-2017, Портал RFPRO.RU, Россия
Авторское право: ООО "Мастер-Эксперт Про"
Калашников О.А.  |  Гладенюк А.Г.
Версия системы: 7.41 от 25.02.2017
Бесплатные консультации онлайн