[an error occurred while processing this directive]
[an error occurred while processing this directive]
|
// ---------------------------------------- M A I N
unsigned char q1=0x80,q2=0x80;
signed char q3=0x80;
void main (void) {
q2>>=2;
q2=q1+q2>>2;
q3>>=2;
.
.
А вот листинг:
.
.
6 void main (void) {
7 q2>>=2;
\ __nearfunc void main();
\ main:
\ 00000000 .... LDI R30,q2
\ 00000002 8100 LD R16,Z
\ 00000004 9506 LSR R16
\ 00000006 9506 LSR R16
\ 00000008 8300 ST Z,R16
8 q2=q1+q2>>2;
\ 0000000A .... LDI R30,q1
\ 0000000C 8120 LD R18,Z
\ 0000000E E030 LDI R19,0
\ 00000010 .... LDI R30,q2
\ 00000012 E010 LDI R17,0
\ 00000014 0F02 ADD R16,R18
\ 00000016 1F13 ADC R17,R19
\ 00000018 9515 ASR R17
\ 0000001A 9507 ROR R16
\ 0000001C 9515 ASR R17
\ 0000001E 9507 ROR R16
\ 00000020 8300 ST Z,R16
9 q3>>=2;
\ 00000022 .... LDI R30,q3
\ 00000024 8100 LD R16,Z
\ 00000026 9505 ASR R16
\ 00000028 9505 ASR R16
\ 0000002A 8300 ST Z,R16
10 }
\ 0000002C 9508 RET
E-mail: info@telesys.ru