C nebo ASM?

j s jarin.hw@gmail.com
Ètvrtek Kvìten 21 16:16:30 CEST 2009


24 bitovy pointer do FLASH je prirodzeny pre modely s viac ako
64kwords programovej pamate. Samozrejme, pre mensie MCU sa da vypnut,
alebo ak clovek vie, co robi, taktiez.

J.S.

2009/5/21 Andrej Jancura <hw_aj@zoznam.sk>:
> Je to nieco podobne... Pointer do flash je 24bitovy, teda 3 byty, dalej tam
> ma 12bitovy pointer do ram, 2 byty a este nejake prenosy premennych vacsich
> ako 1 byte. Potom sa niet comu divit, ze je to take dlhe. PRO verzia
> kompilatora optimalizuje okrem ineho pointre a pracu s nimi.
>
> A.
>
>
> ----- Original Message -----
> From: "Jan Waclawek" <konfera@efton.sk>
> To: "HW-news" <hw-list@list.hw.cz>
> Sent: Thursday, May 21, 2009 3:45 PM
> Subject: Re: C nebo ASM?
>
>
> Neviem ako je to u PICiek, ale trebars u '51 velmi zalezi na konkretne
> zvolenom pametovom modeli, resp. na deklarovanych pamatovych triedach pre
> jednotlive premenne.
>
> Napriklad ak je pouzity "generic" pointer, ktory moze ukazovat do
> ktorejkolvek z pamati, tak jednak je ten pointer vacsi nez "specializovany",
> a druhak praca s nim je vyrazne komplikovanejsia. Podobne ak sa umiestnia
> premenne v externej pamati (v nejakom "vacsom" pamatovom modeli), tak znova
> je praca s nimi komplikovanejsia a zdlhavejsia.
>
> Nie je rozdiel medzi tymto a tym, co poslal pan kolega Michal HW, prave v
> takomto niecom?
>
> wek
>
>
>
> ----- Original Message ---------------
>
> Subject: Re: C nebo ASM?
>   From: Petr Zahradnik <clexpert@clexpert.cz>
>   Date: Thu, 21 May 2009 14:53:11 +0200
>     To: HW-news <hw-list@list.hw.cz>
>
>>Puvodni zprava ze dne 21.5.2009 od Michal HW:
>>
>>> Divam se ne preklad Hitech C kompilatoru pro PIC18:
>>>    Pom=0;
>>>    for (Ukazatel=8;Ukazatel<32+8;++Ukazatel) {
>>>     Pom=Pom+Bufer[Ukazatel];
>>>     *p_Ukaz++=Bufer[Ukazatel];
>>>    }
>>
>>Ja jsem to odeslal moc rychle, chtel jsem jeste doplnit, ze (stale
>>kompilator CCS C) pro PIC18 vyplodi toto:
>>
>>....................    Pom=0;
>>006E:  CLRF   06
>>....................    for (Ukazatel=8;Ukazatel<32+8;++Ukazatel) {
>>0070:  MOVLW  08
>>0072:  MOVWF  07
>>0074:  MOVF   07,W
>>0076:  SUBLW  27
>>0078:  BNC   00C0
>>....................     Pom=Pom+Bufer[Ukazatel];
>>007A:  CLRF   03
>>007C:  MOVF   07,W
>>007E:  ADDLW  0A
>>0080:  MOVWF  FE9
>>0082:  MOVLW  00
>>0084:  ADDWFC 03,W
>>0086:  MOVWF  FEA
>>0088:  MOVF   FEF,W
>>008A:  ADDWF  06,F
>>....................     *p_Ukaz++=Bufer[Ukazatel];
>>008C:  MOVFF  09,03
>>0090:  MOVF   08,W
>>0092:  INCF   08,F
>>0094:  BTFSC  FD8.2
>>0096:  INCF   09,F
>>0098:  MOVWF  x6E
>>009A:  MOVFF  03,6F
>>009E:  CLRF   03
>>00A0:  MOVF   07,W
>>00A2:  ADDLW  0A
>>00A4:  MOVWF  FE9
>>00A6:  MOVLW  00
>>00A8:  ADDWFC 03,W
>>00AA:  MOVWF  FEA
>>00AC:  MOVFF  FEF,70
>>00B0:  MOVFF  6F,FEA
>>00B4:  MOVFF  6E,FE9
>>00B8:  MOVFF  70,FEF
>>....................    }
>>00BC:  INCF   07,F
>>00BE:  BRA    0074
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>
> __________ Informacia od ESET NOD32 Antivirus, verzia databazy 4093
> (20090521) __________
>
> Tuto spravu preveril ESET NOD32 Antivirus.
>
> http://www.eset.sk
>
>
>
> _______________________________________________
> HW-list mailing list  -  sponsored by www.HW.cz
> Hw-list@list.hw.cz
> http://list.hw.cz/mailman/listinfo/hw-list
>



Dal¹í informace o konferenci Hw-list