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