Variabilele și Evaluarea Expresiilor Aritmetico-Logice

Previzualizare laborator:

Extras din laborator:

Obtinerea cunostintelor si deprinderilor de-a lucra cu variabele.

Sarcina lucrarii:

Să se evalueze o expresie pentru a calcula rezultatul în dependență de o condiție.

Varianta:

Notiuni teoretice:

Declararea variabilei

O variabila se va declara in segmentul de date .DSEG si va reprezenta o eticheta urmata de o directiva de preprocesare .BYTE care permite rezervarea unei zone de memorie pentru variabila data.

.DSEG ; variabilele for fi declarate in

; segmentul de date

var1 : .BYTE 1 ; declaratia variabilei var1 si rezervarea

; a 1 byte pentru aceasta variabila.

Operatii de transfer cu variabilele

Operatiile de transfer pentru variabile va fi executat cu comenzi de acces direct la memorie cum ar fi:

• LDS R, k - incarcarea directa a valorii de la adresa k din SRAM intrun registru de uz general.

• STS k, R - stocarea directa valorii unui registru de uz general la adresa k din SRAM.

Eticheta - numele variabilei va reprezenta adresa primei locatii a variabilei. Locatiile superioare dupa principiul "little-endian" se vor accesa dupa adresele imediat urmatoare.

Transferul unei valori de la o variabila la alta

Asa cum pentru arhitectura AVR nu exista o comanda de transfer de date direct dintro locatie SRAM in alta, valoarea din locatia de la adresa reprezentata prin numele variabilei sursa se va incarca mai intai intr-un registru de usz general cu comanda LDS dupa care se va descarca direct intr locatia destinatie cu STS.

;Ex: a = b;

.DSEG ; variabilele for fi declarate in

; segmentul de date

a : .BYTE 1 ; rezervare 1 byte pentru variabila a

b : .BYTE 1 ; rezervare 1 byte pentru variabila b

.CSEG ; programul se scrie in segmentul de cod

lds r16, b ; incarcarea valorii variabilei

; b in registru de lucru

sts a, r16 ; descardcarea valorii registrului

; de lucru in variabila a

Pentru variabile de un volum mai mare de un byte vom avea cate o operatie de transfer pentru fiecare byte. adresele baitilor superiori se vor forma din adresa de baza, eticheta-nume, si constanta de deplasare care va indica numarl de ordine a byte-ului in variabila.

Operatii aritmetice cu variabile

Pentru a evalua o operatie artmetica intre doua variabile va trebui sa transferam mai intai valorile variabilelor in registri de uz general dupacare vom avea posibilitatea de a evalua o operatie aritmetica sau logica. Acest fapt se datoreaza restrictiilor arhitecturii care permite operatii aritmetice doar cu registri de uz general.

;Ex: a = b + c;

.DSEG ; variabilele for fi declarate in

; segmentul de date

a : .BYTE 1 ; rezervare a 1 byte pentru variabila a

b : .BYTE 1 ; rezervare a 1 byte pentru variabila b

c : .BYTE 1 ; rezervare a 2 byte pentru variabila c

.CSEG ; programul se scrie in segmentul de cod

lds r15, b ; incarcarea valorii variabilei b

; intr-un registru de lucru

lds r16, c ; incarcarea valorii variabilei c

; in alt registru de lucru

add r15, r16 ; evaluarea operatiei de adunare

sts a, r15 ; descarcarea rezultatului in variabila a

Mersul lucrării:

1)Alegem metoda de reprezentare a rezultatului.

2)Formulam schema bloc problemei.

3)Setam regisrtii DDRx si PORTx in dependent de necessitate.

3)Elaboram schema electrica in soft-ul PROTEUS.

4)Scriem codul in intregime.

5)Simulam functionarea schemei alese in PROTEUS.

Descrierea modului de functionare a schemei:

In primul rind introducem variabele cu care vom lucra, si dam dimensiunea lor in “byte”, apoi introducem valorile acestor variabile. Apoi formam o subrutina in care vom face prelucrarea expresiei date de professor si afisare rezultatului in dependenta de contie. In expresie o variabila in totdeauna se va modifica, adica ea depinde de altele variabile si noi vom vizualiza cum se modifica aceasta variabila.

Schema bloc de fuctionare .

Observații:

Universitatea Tehnica a Moldovei

Facultatea Calaculatoare, Informatica si Microelectronica

Catedra Microelectronica si Ingineria Biomedicala

Download gratuit

Documentul este oferit gratuit,
trebuie doar să te autentifici in contul tău.

Structură de fișiere:
  • Variabilele si Evaluarea Expresiilor Aritmetico-Logice.docx
Alte informații:
Tipuri fișiere:
docx
Nota:
8/10 (1 voturi)
Nr fișiere:
1 fisier
Pagini (total):
10 pagini
Imagini extrase:
10 imagini
Nr cuvinte:
1 375 cuvinte
Nr caractere:
7 726 caractere
Marime:
1.56MB (arhivat)
Publicat de:
NNT 1 P.
Nivel studiu:
Facultate
Tip document:
Laborator
Domeniu:
Electronică
Predat:
la facultate
Materie:
Electronică
Sus!