Администрация форума не несёт ответственности за достоверность информации и оставляет за собой право редактировать или в особых случаях даже удалять посты без предупреждения. Спасибо за понимание.

Программирование ATMEL в BASCOM.

Информация о пользователе

Привет, Гость! Войдите или зарегистрируйтесь.


Вы здесь » Программирование ATMEL в BASCOM. » Применение Assembler в среде Bascom(-8051) » Хранение данных в ассемблерной вставке. Как узнать адрес размещения ?


Хранение данных в ассемблерной вставке. Как узнать адрес размещения ?

Сообщений 1 страница 3 из 3

1

Например, в ассемблерной вставке есть строчка с данными
.db 1,4,1,255....12,33
при компиляцмии, она размещается в теле программы. Как узнать адрес ее начала?
Или в бейсике есть Data 1,2,3.....3,2,255 и.т.д. В Бейсике есть lookup или read, но как узнать адрес начала этого блока, для использования в ASM?

+1

2

Разобрался сам.
Бейсик хранит указатель на блок DATA в регистрах R8 и R9. Но он заносится туда только после исполнения RESTORE {метка}. Моя ошибка была в том, что я restore не делал и читал ерунду или 0.
А из ассемблера, еще проще - 2 регистра  (старший и младший), командой LDI, по метке перед .db

0

3

Спасибо за наводку, сам с зтим бодаюсь.

0


Вы здесь » Программирование ATMEL в BASCOM. » Применение Assembler в среде Bascom(-8051) » Хранение данных в ассемблерной вставке. Как узнать адрес размещения ?