Цитата(Kuznec9999 @ May 5 2008, 18:40)

Всё-таки инициализировать ОЗУ обязательно.
Переменные, находящиеся в ОЗУ, инициализировать обязательно, а всё ОЗУ нет. Рекомендую составить подпрограммы инициализации переменных для каждой задачи, и в самом начале их вызывать. Так-же нужна подпрограмма инициализации портов. Только ук-ль стека нужно инициализировать до их вызова. А эти подпрограммы и не при старте потом понадобится могут.
Посмотрел вашу программу - впечатлило. Видимо это N1? Ну чтож - всё когда-то новичками были. А вообще всё правильно делаете - с ассемблера и нужно начинать. Только рекомендую какие-нибудь примеры посмотреть что-ли. Особенно интересно смотреть на
Код
in r18,sreg
sbrs r18,1
rjmp init1
Что можно заменить на
Код
brne init1
А вообще удивительно, что эта программа работает!
А разная ерунда на индикатор выводится видимо из-за того, что вы при отсутствии обнуления ОЗУ, видимо и zh не обнуляли.