130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285
|
|
1 | |
Изменение RAM при вызове функции CALL16.01.2019, 08:02. Показов 689. Ответов 6
Метки нет (Все метки)
Здравствуйте!
При программировании i8085 изменяется значение байта RAM, после вызова функции CALL (ACALL), в определённый байт записывается значение PC. Скажите пожалуйста, почему так происходит?
0
|
16.01.2019, 08:02 | |
Ответы с готовыми решениями:
6
Ошибка при вызове функции из stl, "Call of nonfunction" Изменение цвета антенны при вызове функции 'show' Почему изменение параметра шаблона при вызове функции даёт неверный результат? Класс - Ошибки при вызове методов: В вызове функции отсутствует список аргументов R6025 pure virtual function call при вызове метода, реализованного в дочернем классе |
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,927
|
|
16.01.2019, 09:39 | 2 |
Это в стек записывается адрес возврата их процедуры, чтобы команда RET знала куда возвращать управление.
1
|
130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285
|
|
16.01.2019, 11:42 [ТС] | 3 |
Спасибо, alexcoder!
Т.е. записывается не в регистр SP (81H) в SFR?
0
|
1779 / 757 / 153
Регистрация: 03.06.2009
Сообщений: 5,927
|
|
16.01.2019, 12:24 | 4 |
Не знаю что такое SFR. Адрес следующей команды за call записывается по адресам SP-1 и SP-2, после этого SP уменьшается на 2.
1
|
130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285
|
||||||
16.01.2019, 12:37 [ТС] | 5 | |||||
Ага. Я понял. Следует указать на неиспользуемое место, чтобы исключить перезапись значений.
К примеру:
А SFR - Special Function Registers.
0
|
Модератор
8908 / 6677 / 918
Регистрация: 14.02.2011
Сообщений: 23,521
|
|
16.01.2019, 19:55 | 6 |
стек растет вверх
т.е после 3FH следующая ячейка стека будет не 40H, а 3EH Добавлено через 1 минуту поэтому, чаще всего адресс стека ставьт на край(максимальный адрес) ОЗУ
1
|
130 / 15 / 6
Регистрация: 05.08.2013
Сообщений: 285
|
|
16.01.2019, 21:39 [ТС] | 7 |
Спасибо!
Я ошибся, извините, перепутал.
0
|
16.01.2019, 21:39 | |
16.01.2019, 21:39 | |
Помогаю со студенческими работами здесь
7
Команда "call" выполняет только первый бат-файл, а при вызове последующих — выводятся сообщения об ошибке Представьте что вы хакер, изменение действий при вызове команды ls Обнуление значения при вызове функции в этой же функции. Нужен фикс! Как сделать задержку выполнения функции при многократном вызове функции? При вызове функции в if ничего не выводится. Задача в создании перегруженой функции, с целью выбора пользователя Автоматический вызов функции при вызове функции Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |