Guest raducanu_adriano Posted April 2, 2010 Share Posted April 2, 2010 Cerinta: Sa se scrie o secventa de program pt a sterge 4 locatii de memorie din registri cu functii generale, utilizand adresarea directa.Rezolvare:Clrwmovwf 03hmovwf 05hmovwf 07hmovwf 09h.As vrea sa stiu daca e corect si daca se poate scrie altcumva (poate un pic si mai complex ) Link to comment
Rabulea Sergiu Posted April 2, 2010 Share Posted April 2, 2010 CLRF 0x03CLRF 0x05CLRF 0x07CLRF 0x09Si codul postat de tine este corect, doar ca foloseste o instructiune in plus. Link to comment
Guest raducanu_adriano Posted April 2, 2010 Share Posted April 2, 2010 Multumesc pt. raspuns. Din cate inteleg eu, in principiu acesta e codul desi mi se pare prea simplu.Dar poti explica notatia 0x03 de exemplu. Multumesc inca o data. Link to comment
nooob64 Posted April 2, 2010 Share Posted April 2, 2010 Dar poti explica notatia 0x03 de exemplu. Multumesc inca o data.Daca bine zic 0x03 (in hexa) e o alta reprezentare a numarului 03h . Link to comment
puiu Posted April 2, 2010 Share Posted April 2, 2010 1. Daca este forba de PIC12F675 ar trebui sa explicati adresele 07h si 09h deoarece sunt nealocate. Deasemenea 03h se referera la STATUS si conform datashetului acestui produs numai biti 0, 1, 2, 5 se pot scrie. Nu cumva exemplu este dat pentru inducere in eroare.2. Cred ca trebuie sa dai clrf la un registru care poate fi sters, adica pus in zero tot, nu numai partial? Link to comment
Guest raducanu_adriano Posted April 2, 2010 Share Posted April 2, 2010 Eu sunt Incepator si chiar nu stiu care poate fi sters si care nu. Puteti sa imi explicati si mie mai multe. Respect Link to comment
puiu Posted April 2, 2010 Share Posted April 2, 2010 1. Eu am presupus acest lucru luind in considerare documentatia specifica acelui procesor. Se poate lua de pe site-ul lui MICROCHIP, documentatia respectiva si se va analiza unde sunt registri speciali. Link to comment
Guest raducanu_adriano Posted April 2, 2010 Share Posted April 2, 2010 Daca nu cer prea mult poti sa imi scri un program, cum ti se pare tie corect, referitor la problema mea.Multumesc anticipat Link to comment
puiu Posted April 2, 2010 Share Posted April 2, 2010 1. bcf STATUS,RP0 clfr INCON (0Bh) clfr TMR0 (01h) bsf STATUS.RP0 clrf OPTION_REC (81h) clfr EEDATA (9Ah) bcf STATUS,RP02. In loc de denumirea registrilor poti utiliza adresarea directa a registrilor ce este in paranteze Link to comment
Rabulea Sergiu Posted April 3, 2010 Share Posted April 3, 2010 Din cate stiu eu poti apela functia de CLRF si daca registrul are biti read_only, procesorul punand in zero doar bitii care sunt read/write. Link to comment
puiu Posted April 3, 2010 Share Posted April 3, 2010 1. Este adevarat ca poti adresa un registru care nu are toti biti posibili de scris, dar acei biti, daca sunt numai pentru citire, vor ramane imuni la comanda ta. Deci poti spune ca comanda ta nu a fost corect executata deorece acei biti nu asculta de comanda ta. 2.Cred ca ii trebuie la scoala, deorece problema este prea teoretica. Link to comment
Guest raducanu_adriano Posted April 3, 2010 Share Posted April 3, 2010 Tare complicat nu prea inteleg. Problema e pt. facultate(pt. un profesor bolnav cu capu). Deci pana la urma e ok asa:Clrwmovwf 03hmovwf 05hmovwf 07hmovwf 09hsau CLRF 0x03CLRF 0x05CLRF 0x07CLRF 0x09sau bcf STATUS,RP0clfr INCON (0Bh)clfr TMR0 (01h)bsf STATUS.RP0clrf OPTION_REC (81h)clfr EEDATA (9Ah)bcf STATUS,RP0.Chiar nu stiu cum si ce(sunt Incepator) Link to comment
puiu Posted April 3, 2010 Share Posted April 3, 2010 1.Vezi ca profesorul nu este bolnav cu capul ci ti-a pus o intrebare cu o chichita inclusa. Ar fi bine sa-l intrebi despre biti read_only si apoi vei vedea care este raspunsul corect. Primele doua variante sunt general valabile, cand nu este specificat un anume procesor. Pentru a putea sa fie rulate in expresile mele trebuie sa pui ; inaintea parantezelor. Pentru cazul concret a lui PIC12F675 cred ca raspunsul concret este cel care l-am dat eu, deorece am tinut cont de configuratia memoriei lui PIC12F675. Depinde la ce s-a referit profesorul. Link to comment
Guest raducanu_adriano Posted April 3, 2010 Share Posted April 3, 2010 Multumesc pt. pareri, sfaturi. Sarbatori fericite alaturi de cei dragi. Link to comment
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now