Sunteți pe pagina 1din 8

Ministerul Educaţie si Cercetarii al Republicii Moldova

IP Centrul de Excelență Pe Energie si Electronică


Catedra ,, Automatizari ''

Lucrare de laborator NR.1


disciplina : Automatizare cu microprocesoare
Tema : Programarea proceselor ciclice de calcul .

A elaborat elevul din grup AT -0119 Cortac Marin


A verificare profesorul Litvin Nicolae

Chișinau 2023
Scopul lucrarii .
Acumularea competențelor de creare a microprogramelor , proceselor ciclice de
calcul Pe limbajul de asamblare a microprocesorului AMD 2903
Crearea microprogramelor ciclice continua ( necondiționat ) si microprogramelor
ciclice persoană ( rezultat Z=1).
a sustine teoretic .
1. Codurii ASCII
2. Codurile instrucțiuni ( limbaj de asamblare ) ale procesorului AMD 2903
3. Tabela metodelor de adresare
4. Abordare dispozitivelor periferie
1. Codul ASCII
2.Codurile instrucțiuni Pe limbaj de asamblare A procesor AMD 2903
Mnemonice Echipă Cod

Unicast echipe
CLR (B) 0  (d) curatenie *050DD

PIEPTENE) Inversa *051DD

INC(B) (d) + 1  (d) Plus unitati *052DD


DEC(B) (d) - 1  (d) Scădere unitati *053DD
NEG(B) Schimbare semn *054DD
ASR(B) Aritmetic schimb dreapta *062DD
(d)/2(d)
C R

ASL(B) Aritmetic schimb La stânga *063DD


C R (d)*2(d)

ROR(B) Ciclic schimb dreapta *060DD


C R

ROL(B) Ciclic schimb La stânga *061DD


C R

ADC(B) Plus transfer *055DD


SBC(B) Scădere transfer *056DD
SWAB Permutare octeți 0003DD
MEP Citind SSP 1067DD
MTPS Înregistrare SSP 1064SS

Adresă dublă echipe


MOV(B) (e)  (d) Redirecționare *ISSDD
CMP(B) Comparaţie *2SSDD
ADĂUGA (d) + (e)  (d) Plus 06SSDD

SUB (d) - (e)  (d) Scădere 16SSDD

BIT(B) (d)  (e)  (d) boolean multiplicare *3SSDD


BIC(B) curatenie evacuări *4SSDD
BIS(B) (d)  (e)  (d) boolean plus *5SSDD
XOR XOR _ 074RDD

Echipe management program


VSS ramificare , Dacă Nu transfer 103000
BCS ramificare , Dacă transfer 103400
JMP Necondiţionat tranziție 0001DD

Echipe management microprocesor


OPRIRE Stop 000000
AȘTEPTA Aşteptare 000001
RESET Resetați extern dispozitive 000005
3. Codurile metodelor de adresare
4.Adresele dispozitivelor periferice
177560 registrul stări tastaturi
177562 registrul datelor tastaturi
177564 registrul stări monitorului
177566 registrul de date ale monitorului

Mersul lucrării și comentari la instrucțiuni


- Folosind codurile instrucțiunilor și metodelor de adresare culegem microprogramele cu
operați ciclice:

Taparea literei a incontinuu ( ciclu continuu)


100/012701 Mov#141, R1 Trimitem codul literei a (141) în registrul R1

102/141 codul literei a Codul literei a conform tabelei ASCII

104/010117 Mov R1, (R7) Trimitem conținutul registrului R1 pe adresa indicate în R7

106/177566 registrul de date monitor

110/137 JMP100 ramificarea necondiționată

112/100 adresa ramificării.

Taparea literei a, introducerea cifrei 5 în R0 și ciclarea microprogramei


prin scăderea (-1) conținutului R0 până R0=0
100/012701 Mov# 141, R1 Trimitem codul literei a în registrul R1

102/141 Codul literei a conform tabelei ASCII

104/010117 Mov R1, (R7) Trimitem conținutul registrului R1 pe adresa din registrul R7

106/177566 Registrul de date ale monitorului

110/012700 Mov # 5, R0 Trimitem cifra 5 în registrul R0

112/5 Conținutul registrului R0

114/005300 DEC, R0 Scadem 1 din conținutul lui R0 (5-1)

116/001376 BNE LOOP Analiza bitului Z a cuvântului procesorului (dacă în R0 se conține 0) și

ramnificare la adresa precedentă, 114, până când conținutul lui R0 e

egal cu 0

120/000000 HALT Sfârșitul microprogramei


Microprograma cu 5 cicluri prin analizarea conținutului registrului R0 ( scăderea
lui 1 din conținutul lui R5=5, la fiecare ciclu)
MOV #5, R0 1000/012700 Trimitem cifra 5 în registrul R0

1002/5 Conținutul lui R0

DEC R0 1004/005300 Scăderea lui 1 din conținutul registrului R0

BNE LOOP 1006/001376 Ramnificare la adresa 1004 dacă Z ≠ 1 (dacă conținutul lui R0 nu-i

egal cu 0. Au loc 5 cicluri ca rezultat a instrucțiuni BNE

HALT 1010/000000 Sfârșitul microprogramei

Sarcini individuale : Alcătuiți o microprogramă cu câteva cicluri de


ramnificare cu utilizare instrucțiuni BEQ
Trimiteți în R0 cifra 5 - MOV
Ințializați registrul R1 - CLR
Adăugați 1 în R1 - INC
Comparăm conținuturile regiștrilor R0, R1 - CMP
Ramnificare la INC dacă R0 ≠ R1 – BEQ
HALT- Sfârșitul microprogramei.

Concluzie :
Efectuand acest laborator am implementat cunostintele in baza microprocesorului
AMD 2903. Am creat microprograme ce vizeaza procesele ciclice de calcul .Sunt
reprezentate instructiunile limbajului de asamblare a acestui procesor ex:( CLR (B);
INC(B); DEC(B); ASR(B) si altele) mai sunt utilizate si codurile metodelor de adresare si
anume(010(28);110(68);101(58)etc. ). Ca exemplu de program poate fi taparea la ecran
incontinuu a literei ”a” cu ajutorul instructiunilor „MOV” si „JMP”.

S-ar putea să vă placă și