Re: TUTORIJAL: PicBasic Pro 3 i PIC16F1827
26.12.2012. u 11:12 · pre 168 meseci
#41
U prvim verzijama BASIC-a programi su na početku svake linije imali broj koji je služio za identifikaciju i omogućavao da se program po potrebi preusmeri na odredjenu liniju naredbom GOTO ili GOSUB. Pokazalo se da je to veliki izvor grešaka jer je moguće pogrešiti pri kucanju i umesto jednog broja otkucati drugi pri čemu program nastavlja na pogrešnom mestu i ne radi kako treba. Kada bi ovaj program bio pisan na taj način, izgledao bi ovako:
10 high portb.0
20 pause 500
30 low portb.0
40 pause 500
50 goto 10
Ako u poslednjoj naredbi greškom otkucamo
50 goto 20
program će samo u prvom prolazu da uključi LED i više nikada neće doći na liniju 10 tako da će LED stalno biti isključena. U ovako kratkom programu i nije problem uočiti grešku, ali zamislite program sa više stotina, ili čak hiljada linija u kojima postoji greška u broju linije!
Zato su uvedene labele odn. oznake, čime je mogućnost greške drastično smanjena. Labela se, slično broju, postavlja pre neke instrukcije, ali ne i pre svake, čime se mogućnost greške drastično smanjuje. Labela u PBP-u može da sadrži cifre, slova i donju crtu, ali ne može da počne cifrom, a obavezno završava dvotačkom (samo kod definisanja, ne i kada je argument komande). Dužina je praktično neograničena, ali PBP uzima u obzir samo 31 karakter ako je naziv labele duži. Sasvim je svejedno da li je labela pisana velikim ili malim slovima, to znači da se labele 'POcetAK ' i 'pocEtaK ' tretiraju kao da su iste. Moguće je u istoj liniji staviti i labelu i PBP naredbu
mada je moj običaj da labelu stavim u zasebnu liniju čime se postiže dobra optička odvojenost labela.
10 high portb.0
20 pause 500
30 low portb.0
40 pause 500
50 goto 10
Ako u poslednjoj naredbi greškom otkucamo
50 goto 20
program će samo u prvom prolazu da uključi LED i više nikada neće doći na liniju 10 tako da će LED stalno biti isključena. U ovako kratkom programu i nije problem uočiti grešku, ali zamislite program sa više stotina, ili čak hiljada linija u kojima postoji greška u broju linije!
Zato su uvedene labele odn. oznake, čime je mogućnost greške drastično smanjena. Labela se, slično broju, postavlja pre neke instrukcije, ali ne i pre svake, čime se mogućnost greške drastično smanjuje. Labela u PBP-u može da sadrži cifre, slova i donju crtu, ali ne može da počne cifrom, a obavezno završava dvotačkom (samo kod definisanja, ne i kada je argument komande). Dužina je praktično neograničena, ali PBP uzima u obzir samo 31 karakter ako je naziv labele duži. Sasvim je svejedno da li je labela pisana velikim ili malim slovima, to znači da se labele 'POcetAK ' i 'pocEtaK ' tretiraju kao da su iste. Moguće je u istoj liniji staviti i labelu i PBP naredbu
Code:
pocetak: high portb.0
pocetak: high portb.0
mada je moj običaj da labelu stavim u zasebnu liniju čime se postiže dobra optička odvojenost labela.



