Jak na MPASM ?(dlouhe)

Hynek Sladky sladky at jablotron.cz
Wed Aug 29 08:40:49 CEST 2001


Vzhledem k tomu, ze jsem autor, tak se pokusim vysvetlovat svuj kod... :-)

> ;Strings
>                     addlw    0-STRING
>                    addwf    pcl, F
> STRING    dt         "AHOJ SVETE!", 0
> BLABLA   dt         "Blabla a jeste Bla",0
>
> No chapu, ze to je kus podprogramu, ktery ma generovat neco jako RETLW ,
> kde v promenne je
> to, co je mezi zavorkami.

Takze tohle je jasne... ?

> Pokousel jsem se prijit na to, proc je tam
>
> addlw 0-STRING
>

To proto, abych mohl napsat
    movlw    STRING
    call        Print
    movlw    BLABLA
    call        Print
a nemusel prepocitavat, jake posunuti ma zacatek prislusneho textu od instrupce addwf pcl, F
Dalsi verze muze vypadat
    movlw    STRING-STRING
...
    movlw    BLABLA-STRING
nebo si napsat makro
movsw    macro    pozice
    movlw    pozice-STRING
endm
    movsw    STRING
...
    movsw    BLABLA
Dalsi podminkou pro uspesne pouziti je, ze musi byt spravne nastaveny registr pclath. Ja osobne mam radsi vsechny texty na zacatku
programove pameti (tedy nejcasteji od adresy 0005h). Pak ani nemusim na pclath sahat (po resetu tam je 00h).
Kdyz nekoresponduje high (STRING) a pclath, tak to pak skace "kam chce", respektive kam reknete, aby to skocilo... :-)

> Pan Sladky mi to posleze popisoval
> .....Tuto pozici pak inkrementuji tak dlouho, dokud nenajdu hodnotu 0
> (tzv. ASCIIZ retezec - pouziva se v C jazyku).
> No dobre, ale co s tim?
To je vlastnost funkce Print, ktera vybira znaky tak dlouho, dokud nenajde znak s kodem 00h. Pak ukonci svoji cinnost.

> Nekamenujte mne prosim, vim ze se ptam hodne spatne. Skoncil jsem s tim
> dneska rano ve 2.30
> a ocividne mi to nezapalilo. Koukal jsem se do helpu pro MPASM, ale tam
> jsou popsany jenom
> macroinstrukce, ale ne moznosti pouziti(a uz vubec ne takovehle.) Mozna
> to jenom vidim moc
> slozite a nebo to slozite delam.

Netechnicka rada: obcas je dobre vypnout pocitac, jit se projit, zkusit myslet na neco jineho. Pak se mozek odfixuje od daneho
pohledu a je schopen nalezat jine pohledy na problem a jina reseni. Je to i moje zkusenost: kdyz neco nejde v praci, tak neni
resenim zustat dele, ale jit domu (cesta mi trva asi 25-30minut) - a je az s podivem, kolik jsem toho vymyslel cestou domu (jen jsem
si musel obcas honem udelat poznamku, abych to do dalsiho dne nezapomnel).

Hynek Sladky








More information about the HW-list mailing list