Preprocesorul. Gestionarea Ecranului în Mod Text

Laborator
8/10 (1 vot)
Domeniu: Calculatoare
Conține 1 fișier: doc
Pagini : 10 în total
Cuvinte : 3381
Mărime: 18.28KB (arhivat)
Publicat de: Theodor Marginean
Puncte necesare: 0

Extras din laborator

2. Gestionarea ecranului în mod text

Placile grafice tip VGA au doua moduri primare de functionare: modul text si cel grafic. În modul text se poate selecta unul din submodurile existente (listate mai jos). Pe "plansa" ecranului punctul de coordonate x = 1, y = 1 este considerat originea si este situat în coltul din stânga sus. Consideram x ca fiind axa orizontala – abscisa (numarul de coloane), iar y axa verticala – ordonata (numarul de linii). Valoarea lui x creste pe masura ce adaugam noi coloane spre dreapta, iar valoarea lui y creste pe masura ce cursorul coboara. Maximele pentru x si y sunt 40 si 25 pentru modurile (BW40 si C40) si 80, 25 pentru celelalte moduri text. Caracterele care sunt prezente pe ecran sunt memorate într-o zona de memorie împreuna cu atributul lor, fiecare pe 8 biti (sunt 256 de caractere în modul ASCII extins). Atributul unui caracter este determinat de culoarea fondului, culoarea caracterului si daca caracterul clipeste sau nu. Sunt rezervati 4 biti pentru culoarea caracterului (16 culori), 3 biti pentru culoarea fondului si 1 bit pentru clipire.

Functii de gestionare a ecranului în mod text (CONIO.H):

void textmode(int mod_nou);

- trece ecranul în mod text;

- daca modul se indica sub forma unei constante simbolice din enumerarea text_modes, este obligatoriu sa se includa <conio.h> (care le contine);

- constantele simbolice, valorile lor numerice si modurile corespunzatoare sunt:

LASTMODE -1 modul text anterior

BW40 0 alb-negru

C40 1 color, 40 de coloane

BW80 2 alb-negru, 80 de coloane

C80 3 color, 80 de coloane

MONO 7 monocrom, 80 de coloane

C4350 64 EGA 43 de linii si VGA 50 de linii

- la apelarea textmode(), fereastra curenta este restabilita la întregul ecran, iar atributele text curente sunt restabilite la normal (echivalent cu normvideo() )

- se foloseste numai dintr-un mod text în altul. Pentru a se trece temporar din modul grafic în modul text se foloseste restorecrtmode()

void textattr(int atr_nou);

- stabileste atributele textului fixând culorile pentru fundal (background) si pentru scris (foreground) într-o singura functie (în loc de textbackground() si textcolor());

- afecteaza caracterele afisate de functiile ce lucreaza în modul text-direct video output (ca cprintf()), dupa apelarea ei (caracterele deja afisate nu sunt afectate);

- parametru atr_nou are structura: Bbbbffff

bitul 7 B autorizeaza blinking-ul (valori 0-1)

bitii 6-4 bbb culoarea de fundal (valori 0-7)

bitii 3-0 ffff culoarea scrisului (valori 0-15)

- o parte din culori pot fi folosite atât pentru fundal(background) cât si pentru scris (foreground), altele numai pentru scris

- valorile atr_nou pentru video normal (WHITE pe BLACK) cât si video invers (BLACK pe LIGHTGRAY) sunt 0x0F si respectiv 0x70 (valori date în hexazecimal)

Atributul se poate seta prin formula:

attr=16*cul_fond+cul_scris+clipire

void textbackground(int culoare);

- stabileste noua culoare pentru fundal

- afecteaza functiile care afiseaza în mod text direct pe ecran

- culoare poate fi între 0 si 7, sau constantele simbolice corespunzatoare (având numele culorii respective - definite în <conio.h>);

void textcolor(int culoare);

- stabileste noua culoare pentru scris

- afecteaza apelurile ulterioare ale functiilor ce folosesc direct video output, nu si caracterele deja afisate;

- newcolor poate fi intre 0 si 15 - sau constantele simbolice corespunzatoare putându-se adauga 128 (BLINK) pentru blinking

Exemplu:

BLACK=0;WHITE=15;

- pot exista 8 culori pentru fond (de la 0 la 7) si 16 pentru text (de la 0 la 15)

void normvideo(void);

- selecteaza caracterele normale ca intensitate, refacând atributele textului (foreground si background) la valorile de la începutul programului(implicite);

- revine la intensitatea normala în caz ca s-a folosit înainte highvideo()

- afecteaza numai caracterele ce vor fi afisate direct, ulterior apelarii ei.

void lowvideo(void);

- selecteaza caracterele low-intensity (sterge bitul high intesity din culoarea (foreground) cu care se scrie)

void highvideo(void);

- selecteaza caracterele high-intensity (setând bitul corespunzator din culoarea de cu care se scrie (foreground))

Preview document

Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 1
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 2
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 3
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 4
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 5
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 6
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 7
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 8
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 9
Preprocesorul. Gestionarea Ecranului în Mod Text - Pagina 10

Conținut arhivă zip

  • Preprocesorul. Gestionarea ecranului in mod text.doc

Alții au mai descărcat și

Hard-Disk-urile

Elementele componente într-un harddisc Pistele sunt zone circulare concentrice scrise pe ambele fete ale unui platan, asemenea pistelor de pe un...

Hard Disk-ul

Stocarea datelor Datele sunt stocate pe suprafata platanului în sectoare si în piste. Pistele sunt cercuri concentrice, iar sectoarele sunt arcuri...

Hard Disk-ul

Harddisk-ul, este o componenta nu numai esentiala pentru datele utilizatorului, ci si una care trebuie protejata cu mare atentie. Principalul...

Arhitectura calculatoarelor

Un sistem de caclul sau altfel spus un computer se defineste prin a fi un aparat electronic de prelucrare automata a datelor,pe baza unui program....

Arhitectura calculatorului

- PREZENTARE GENERALA A UNUI SITEM DE CALCUL - CD-ROM Organizarea logica a CD-ROM-ului - MONITOR - BIBLIOGRAFIE PREZENTARE GENERALA A UNUI...

Hardware

INTRODUCERE Un sistem electronic de calcul – denumit în mod curent calculator, reuneste din punct de vedere fizic si functional doua componente de...

Procesorul

Procesorul (Central Processing Unit) reprezinta "creierul" unui sistem, analogia cu sistemele vii fiind valabila. Calculele simple sau complexe,...

Subiecte și Probleme IP

1. Într-o aplicatie trebuie sa se tina evidenta persoanelor dintr-o colectivitate, a locului de munca si a adreselor de e-mail. a. Sa se...

Te-ar putea interesa și

Limbaje de Programare

PREZENTAREA GENERALĂ A MEDIULUI DE DEZVOLTARE Borlandc C++, produs al firmei Borland International, este un pachet de programe care oferă o...

Ai nevoie de altceva?