ВходНаше всё Теги codebook 无线电组件 Поиск Опросы Закон Четверг
11 июля
361972 Топик полностью
argus98 (15.10.2012 16:02, просмотров: 129) ответил tvi на Подскажите, пожалуйста, как в ассемблере передавать параметры при вызове подпрограммы и как менять значения переменных? Я пытался использовать для этого директиву SET, но у меня ничего не получилось - демопрогу этого эксперимента прилагаю.
Вставлю свои 5 копеек (по "trablset2.asm") : 1. Есть такая замечательная команда sbiw .macro Delay lDelay: sbiw @0,1 ;(@0 может быть R24, XL, YL, ZL) brne lDelay .endmacro 2. констукцию brne ts1 rjmp TestG2 ts1: проще сделать так: breq TestG2 (для ts2: аналогично) 3. Какой смысл от проверки sbrc FLAG,fGx, если программа туда попадает ТОЛЬКО при условии fGx=0 ? 4. Судя по тексту смысл (от TestSet: до lDelay:) заключается в инверсии бита fGx в FLAG. Тогда не проще будет: TestSet: eor FLAG,p1 lDelay: :::::::: ; а ??? PS "clr FLAG ; без этой команды в VMLABе не работает" и правильно ругается. По сбросу содержимое РОНов и ОЗУ не определено