RUTINETTE E QUANT'ALTRO ALTRO PER ST6

INVERTIAMO IL DATO:
Vi è mai successo di dover invertire un byte per poterlo trasmettere o magari per leggerlo dopo averlo ricevuto da una periferica ? ecco unasemplice routine che risolve i vostri problemi :supponiamo di avere il seguente dato   00110010b e vogliamo che diventi 01001100b

       

 Gestione del dato da programma: Lettura di un dato dalla porta del micro ( per questo es.: è C0 ):
                    ldi cont,8

                    ldi cont,8     

                    ldi molt,1                     ldi molt,1
                    clr dato                     clr dato
                    ldi byte ,0110010b loop3           jrr 0,port_c,loop1
                    subi a,0                     ld a,molt
                     ld a,byte                     add a,dato
loop3           rlc a                     ld dato,a 
                    jrc loop1 loop1           ld a,molt
                    jp loop2                     sla a
loop1           ld a,molt                     ld molt,a
                   add a,dato                     dec cont
                    ld dato,a                      jrz  out
loop2           ld a,molt                            jp loop3
                   sla a out                ................... programma 
                   ld molt,a
                   dec cont
                   jrz out
                   jp loop3
out              ................ programma 
_________________________________________________ ________________________________________________