Цитата(JohnKorsh @ May 6 2011, 08:08)

Добрый день! Код для PIC16F887 после ассемблирования пересёк границу банка памяти.
Как правильно написать call, чтобы вазвать поцедуру из другого банка памяти и верннуться в вызывавший банк?
И как то же самое проделать с goto?
Если можно, то с "кусками" ассемблера.
Эх, ностальгия, смахнул подступившую слезу, достал с полки архивный CD-ROM многолетней давности и вытащил из архива макросы, которые я последний раз обновлял 9 лет назад. То что вам нужно, в начале идет, CALL и GOTO с учетом страниц (PxxCALL, PxxGOTO).
Там же и остальное, что использовал, вдруг чего пригодится.
MACDEFS.ZIP ( 4.38 килобайт )
Кол-во скачиваний: 97там где в комментарии написано ";C ВКЛЮЧЕНИЕМ ПЕРВОЙ СТРАНИЦЫ ОЗУ (ЕСЛИ НУЖНО)" на самом деле имеется в виду любая из четырех страниц, макросы начинали писаться когда пики были маленькими, потом макросы подредактировал, а комментарии поленился

Но мой вам совет: идите-ка вы в Си, бросайте на чистом ассме писать. Вставки ассмовские раз в пять лет приходится делать, но не каждый год.