Inregistreaza | Ai uitat parola?

Lucrare de laborator VI

Numar pagini 11
Nume Lucrare de laborator VI
Subiect Arhitectura calculatoarelor
Institutie Universitate
Universitate Facultatea de Automatica, Calculatoare, Electronica
Pret 50 puncte
Evaluarea calitatii 0 / 0 (100%)
Adaugat 07-05-2009
Adaugat de dktf0406
Descarcat 8
Marimea fisierului 0 KB
Formatul fisierului pdf
Cuvinte cheie aplicatii , instructiuni , incarcare , memorie , exercitii , probleme
Format: pdf
Pret: 50 puncte
Descrierea materialului:
A. Aplicatii la instructiunile de incarcare din memorie
Exercitii si probleme
Extras din material:
ARHITECTURA CACLULATOARELOR
Lucrarea de laborator nr. 6


A. Aplicatii la instructunile de incarcare din memorie

?n continuare se va descrie al doilea exemplu.

load R1,Text ;the start of the string
load R2,1 ;increase step
load R0,0 ;string-terminator
NextChar: load RF,[R1] ;get character and print it on screen
addi R1,R1,R2 ;increase address
jmpEQ RF=R0,Ready;when string-terminator, then ready
jmp NextChar ;next character
Ready: halt

Text: db 10
db "Hello world !!",10
db " from the",10
db " Simple Simulator",10
db 0 ;string-terminator


Programul funcioneaz ?n felul urmator:

load R1,Text *se ?ncarc ?n registrul R1 adresa de ?nceput a
stringului – adresa de ?nceput este obtinut prin ?nlocuirea etichetei
Text cu adresa pe care o indic.
load R2,1 *se ?ncarc ?n registrul R2 1 – se iniializeaz pasul
de crestere a contorului
load R0,0 *se ?ncarc ?n registrul R0 0 – se iniializeaz R0
cu caracterul de sf?rit de string
NextChar: load RF,[R1] *se ?ncarc ?n registrul RF caracterul
aflat la adresa coninut ?n registrul R1 – se afieaz caracterul aflat
la adresa coninut de registrul R1.
addi R1,R1,R2 *se adun coninutul R1 la coninutul R2 iar
rezultatul se stocheaz ?n R1- se seteaz in R1 adresa urmatorului
caracter care trebuie afiat.
jmpEQ RF=R0,Ready *se compar coninutul registrului RF cu
coninutul registrului R1 si daca sunt egale se ?ncarc ?n PC adresa
instruciunii indicate de eticheta Ready –se verific dac s-a ajuns la
caracterul care indic sf?ritul irului. Eticheta “Ready” indic?nd
instructiunea “Halt” aceasta are ca efect oprirea programului.
jmp NextChar *salt necondiionat la adresa determinat de
eticheta NextChar – ?n felul acesta se continua ciclul at?t timp c?t nu
se ?nt?lnete caracterul de sf?rit de ir.
db 10
db "Hello world !!",10
db " from the",10
db " Simple Simulator",10
db 0 ;string-terminator

Aceast seciune din program ?ncarc ?n memorie irul de caractere
care trebuie afiat. ?ncrcarea ?n memorie ?ncepe de la locaia imediat
urmatore instruciunii “halt”. Dupa intructiune “halt” apare un spaiu liber.
Aceasta se datoreaz faptului ca ?n memorie se aloc spaiu pentru operanzi,
chiar dac acestia nu sunt folosii.


Echivalentul ?n C++ al programului ar fi

include ;
include ;

int i;
char *Text;

main(){
i=0;
Text =”
Hello world !!
from the
Simple Simulator
”;
do{
putc(Text[i]);
i=i+1;
} while(Text[i]!=0)
}



?n memorie programul apare astfel:

Registrii sistem:
PC: 00 0000 0000
IR: 00 00 0000 0000 0000 0000

00: 21 10 load (2) R1 (1), Text (10)-eticheta este ?nlocuit cu o adresa
Reprezentare ?n binar. 0010 0001 0001 0000

La ?nceputul execuiei programului registrul de instruciuni si registrul
de programe sunt au valoarea zero. ?n prima faz se ?ncarc ?n registrul de
programe instruciunea de la adresa 00h i se incrementez cu 2 contorul de
programe. Datele aflate ?n registrul de instruciuni sunt interpretate de
Un...


Materiale similare

Nume: Lucrare de laborator I
Extras din material: ... sale ?n 1. Se observ c pe ieirea Q a circuitului s-a obinut valoarea 1, indiferent de starea sa anterioar. ?n aceast situaie ieirea Q a circuitului este chiar valoarea intrrii D, adic 1, iar pe ieirea Q este valoarea negat a intrrii D. Dac intrarea D a circuitului devine 1, H rm?n?nd nemodificat ?n 1, circuitului se comport ca ?n figura de mai jos: 11 Poarta AND1 are ca intrri valoarea negat a lui D (adic 1) i valoarea lui H, care a rmas nemodificat...
Nume: Lucrare de laborator II
Extras din material: ...100 XOR 00101101 8. S? presupunem c? vre?i s? izola?i cei mai semnificativi trei bi?i dintr-un ?ir de ?apte bi?i plas?nd 0 pe pozi?iile celorlal?i patru bi?i, f?r? a afecta valorile celor trei bi?i specifica?i. Ce masc? ?i ce opera?ie va trebui s? utiliza?i pentru a face acest lucru? Da?i exemplu. PDF created with pdfFactory Pro trial version www.pdffactory.com 9. S? presupunem c? vre?i s? nega?i cei trei bi?i din centrul unui ?ir de ?apte bi?i l?s?nd ceilal?i patru bi?i nemodifi...
Nume: Cursul VII
Extras din material: ...rii dintr-o unitate central? de prelucrare servesc ca zone tampon ?ntre unitatea de comand? ?i unitatea aritmetico-logic?, sau ?ntre unitatea central? de prelucrare ?n ansamblu ?i memoria principal?. Ata?area controlerelor la magistrala unui calculator m?re?te semnificativ complexitatea opera?iilor de control al comunica?iei de-a lungul acestei c?i de comunica?ie. Trebuie efectuate transferuri de date ?ntre unitatea central? de prelucrare ?i memoria principal?, ?ntre unitatea cen...
Nume: Cursul V
Extras din material: ...ul de opera?ie al fiec?rei instruc?iuni este reprezentat de primii patru bi?i, sau, ceea ce revine la acela?i lucru, de prima cifr? hexazecimal?. Lista complet? a instruc?iunilor con?ine numai 12 instruc?iuni elementare, ale c?ror opcoduri sunt reprezentate prin cifrele hexazecimale de la 1 la C. Astfel, orice cod de instruc?iune care ?ncepe cu cifra hexazecimal? 3 (?irul de bi?i 0011) se refer? la o instruc?iune de stocare (STORE), iar orice opcod care ?ncepe cu cifra hexazecimal? A s...
Nume: Curs VIII
Extras din material: ...? mai sc?zut, care totu?i au putut s? execute un mare num?r de instruc?iuni. Rezultatul a fost arhitectura sistemului IBM/ 360, o familie de calculatoare compatibile, travers?nd aproape doua ordine de magnitudine, at?t ?n pre? c?t ?i ?n capacitate. Pentru c? pia?a de calculatoare a explodat ?n anii 1970 ?i capacit??ile de calcul au crescut rapid, cereare de calculatoare cu pre? sc?zut a favorizat proiectarea calculatoarele folosind interpretoare. Abilitatea de a imbina hardware ?i...
Nume: Curs XII
Extras din material: ...st ?nc?rcat. Acest proces continu? ?i continu? p?n? cineva se plictise?te ?i opre?te ma?ina. 5.1.5.2 Determinarea adresei microinstruc?iunii care urmeaz? s? fie executat? ?n paralel cu conducerea c?ii de date, microprogramul trebuie s? determine care instruc?iune trebuie executat? ?n continuare pentru c? nu sunt ?n ordinea ?n care apar ?n memoria de comenzi. Calcularea adresei urm?toarei microinstruc?iuni ?ncepe dup? ce MIR a fost ?nc?rcat ?i este stabil. C?mpul de 9 bi?i al ad...
Nume: Curs XIII
Extras din material: ... (c) Figura 5.14 (a) Program ?n JAVA. (b) Programul corespunz?tor ?n ansamblare JAVA. (c) Program IJVM ?n hexazecimal. Am ajuns ?n sf?r?it ?n acel punct ?n care putem pune toate piesele ?mpreun?. ?n figura 5.15 este prezentat un microprogram care ruleaz? pe Mic-1 ?i interpreteaz? IJVM-ul. Este un microprogram surprinz?tor de scurt – doar 112 microinstruc?iuni ?n total. Exist? trei coloane pentru fiecare microinstruc?iune: eticheta, microcod...
Toate materialele similare



Comentarii asupra materialului "Lucrare de laborator VI"

Nimeni nu a verificat inca acest material. Fi primul care isi publica opinia



Publica-ti opinia

Logheaza-te pentru a posta un comentariu