Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • In contact cu
  • Programare adaptoare video CGA, EGA si VGA. La ce filă trebuie să accesați pentru a modifica câmpurile documentului editat? Este necesar să construiți valorile intervalului de celule H7:H21 în ordine descrescătoare

Programare adaptoare video CGA, EGA si VGA. La ce filă trebuie să accesați pentru a modifica câmpurile documentului editat? Este necesar să construiți valorile intervalului de celule H7:H21 în ordine descrescătoare

Funcția MIN este utilizată pentru a găsi numărul minim dintr-un interval dat și returnează numărul corespunzător.

Funcția MINA este concepută pentru a găsi valoarea minimă în intervalul de date studiat și returnează rezultatul corespunzător.

Exemple de utilizare a funcțiilor MIN și MIN în Excel

Foaia de calcul Excel conține date despre data nașterii lucrătorilor de birou. Stabiliți vârsta minimă pentru un angajat.

Fișa cu date:

Pentru calcule, folosim formula matrice (rezultatul corect este doar atunci când apăsați combinația Ctrl + Shift + Enter):


Singurul argument este expresia YEAR(TODAY())-YEAR(B3:B10), care returnează o matrice de valori numerice egală cu diferența dintre anul curent și anul nașterii fiecărui angajat. Ca rezultat al calculelor, obținem:


Formula a calculat automat că cel mai tânăr angajat are 27 de ani.



Cum se calculează suma valorilor minime nenegative în Excel

Tabelul Excel conține mai multe coloane de date numerice. Găsiți suma valorilor minime nenegative conținute în aceste coloane. În plus, găsiți cel mai mic număr disponibil în tabel.

Tabel sursă:


Pentru a determina numerele minime nenegative, utilizați formula matrice:

!}

Singurul argument este funcția IF, care verifică matricea de date pentru apariția numerelor pozitive. Dacă condiția este adevărată, funcția MIN ia ca argument un tablou care conține doar numere pozitive. În mod similar, găsim valorile minime pentru coloanele rămase. Rezultatul rezultat (Ctrl+Shift+Enter):


Găsiți cel mai mic număr din tabel folosind formula:

Argumentele funcției sunt valorile returnate de fiecare dintre funcțiile MIN pentru vectorul de date specificat. Utilizați ca formulă matrice. Rezultat (Ctrl+Shift+Enter):


Găsirea mai multor valori mai mici în condiții în Excel

O anumită companie a lucrat anterior cu un singur furnizor de produse. Cu toate acestea, a devenit cunoscut faptul că alți furnizori oferă prețuri mai rezonabile. Foaia de calcul Excel conține coduri de produse și reduceri oferite de alți furnizori. Dacă nu există reducere, se afișează valoarea logică FALSE, dacă numărul este pozitiv, produsul este mai scump. Găsiți cea mai mare reducere pentru aceleași articole doar la prețuri diferite de la diferiți furnizori.

Tabel sursă:

Formula de calcul (formula matrice):

=0;"Fără reducere";MINA(IF(A3:A15=D1;B3:B15;"")))" class="formula"/>

Algoritm de calcul:

  1. Funcția IF testează condiția MINA(IF(A3:A15=D1;B3:B15;""))>=0, unde MINA returnează valoarea minimă a reducerii pentru produsul al cărui cod este specificat în celula D1.
  2. Funcția MINA ia în considerare valorile booleene. Este posibil să nu existe o reducere pentru niciun articol (toate valorile sunt FALS), iar rezultatul va fi 0 (zero). În acest caz, șirul de text „Fără reducere” va fi returnat. Un eveniment similar va avea loc dacă toate reducerile sunt doar numere pozitive.
  3. Dacă condiția nu este îndeplinită, se va returna reducerea maximă (cea mai mare valoare negativă) pentru codul de produs specificat.

Să calculăm cele mai mari reduceri pentru alte bunuri. Ca rezultat, obținem (Ctrl+Shift+Enter):


Caracteristici de utilizare a funcțiilor MIN și MIN în Excel

Funcția MIN are următoarea notație de sintaxă:

MIN(număr1 ;[număr2]…)

Descrierea argumentelor:

  • numarul1 este un argument obligatoriu care caracterizeaza primul numar din intervalul in care doriti sa aflati valoarea minima;
  • [număr2]... - al doilea și următoarele argumente opționale care caracterizează al doilea și următoarele numere din intervalul studiat.

Funcția MINA are următoarea notație de sintaxă:

MINA(valoare1, [valoare2]…)

Descrierea argumentelor:

  • valoare1 este un argument obligatoriu care caracterizează prima apariție din intervalul în care doriți să găsiți valoarea minimă;
  • [valoarea2]... - al doilea și următoarele argumente opționale care caracterizează a doua și apariția ulterioară a intervalului de date studiat.

Note 1:

  1. Diferența de sintaxă subliniază diferența semantică dintre cele două funcții: MIN lucrează doar cu valori numerice, MINA ia în considerare suplimentar tipul de date boolean.
  2. Dacă numai șiruri de text care nu sunt reprezentări text ale numerelor au fost transmise ca argumente la funcțiile MIN și MIN, funcțiile vor returna valoarea 0.
  3. Funcția MIN, care ia ca argument o referință la un interval de date, ignoră nu numai adevărul și falsul logic, ci și șirurile de text și celulele goale.
  4. Dacă argumentul MIN sau MINA este o formulă care returnează o eroare, rezultatul executării acestor funcții va fi și un cod de eroare. Se recomandă să verificați datele utilizând funcția IFERROR.
  5. Funcțiile MIN și MINA nu au funcții logice analogice, așa cum este implementat, de exemplu, în funcția COUNT (COUNTIF), astfel încât verificarea datelor ar trebui efectuată atunci când sunt executate MIN și MINA, trecând funcții logice (IF, ISERROR și altele ) ca argument.

Note 2:

  1. Funcția MINA returnează 0 (zero) dacă intervalul referit ca argument conține valori text sau reprezentări text ale numerelor.
  2. Ambele funcții sunt folosite pentru a găsi valorile minime într-un interval de valori transmise ca argument, dar există câteva diferențe între ele:
  • Dacă unul dintre argumentele funcției MIN este o valoare booleană (TRUE sau FALSE, care poate fi convertită în valorile numerice 1 și respectiv 0), această valoare va fi luată în considerare în calcule. De exemplu, funcția =MIN(100;TRUE;FALSE;10) va returna valoarea 0.
  • Dacă o referință la un interval care conține date de tip boolean a fost transmisă ca argument la funcția MIN, aceasta din urmă nu va fi luată în considerare. De exemplu, funcția =MIN(A1:A4) va returna 10 dacă intervalul de celule A1:A4 conține următoarele date: 100, TRUE, FALSE și, respectiv, 10.
  • Pentru a lua în considerare datele de tip logic în calcule, ar trebui să utilizați funcția MINA. De exemplu, intrarea =MINA(A1:A4) va returna valoarea 0 (logica FALSE este echivalentă cu 0 numeric) dacă celulele A1:A4 conțin date ca în paragraful anterior.
14. Întrebare. Ce comandă ați alege pentru a formata rapid paragraful de jos în același format ca și cel de sus?

Opțiuni de răspuns:

4) 3.
15. Întrebare. La ce filă trebuie să accesați pentru a modifica câmpurile documentului editat?


Opțiuni de răspuns:

4) 4.
16. Întrebare. Pe ce buton trebuie apăsat pentru a obține acest text?


Opțiuni de răspuns:

4) 2.
17. Întrebare. La ce filă trebuie să accesați pentru a scrie numerotarea paginilor în document?


Opțiuni de răspuns:

4) 4.
18. Întrebare. Textul conține un link către o sursă externă. Ce ar trebui să fac ca să trec peste asta?


Opțiuni de răspuns:

5) țineți apăsată tasta SHIFT și faceți clic pe link cu butonul stâng al mouse-ului.
19. Întrebare. Ce se întâmplă dacă faceți clic pe butonul specificat?

Opțiuni de răspuns:

1) în acest document va fi creată o pagină goală;

2) va avea loc o tranziție la modul „Previzualizare”;

3) va fi creat un nou document Microsoft Word;

4) pagina curentă va fi tipărită.
20. Întrebare. Vrei ca paragraful de jos să arate ca cel de sus. Ce buton trebuie apăsat?


Opțiuni de răspuns:

4) 1.
21. Întrebare. În ce parte a ecranului faceți dublu clic pe butonul stâng al mouse-ului pentru a face posibilă introducerea unui antet și subsol?


Opțiuni de răspuns:

4) 3.
22. Întrebare. Cum se selectează un interval de celule marcate cu galben pe o foaie?


Opțiuni de răspuns:

1) selectați intervalul de celule E2:E8, apoi ținând apăsată tasta ALT, selectați intervalul H2:H8;

2) selectați intervalul de celule E2:E8, apoi, ținând apăsată tasta CTRL, selectați intervalul H2:H8;

3) selectați intervalul de celule E2:E8, apoi ținând apăsată tasta SHIFT, selectați intervalul H2:H8;

4) utilizați formatarea condiționată.
23. Întrebare. Ați decis să numărați numărul persoanelor care au ocupat funcții guvernamentale și funcții publice în organele executive și legislative în 2013. Care variantă rezolvă această problemă?


Opțiuni de răspuns:

1) =SUM(H4:H8);

2) =SUM(H4:H5);

3) =SUMA(B4:B5);

4) =SUMA($4:$5).
24. Întrebare. Doriți să inserați o foaie nouă într-un registru de lucru Microsoft Excel cu un singur clic, pe ce buton ar trebui să faceți clic?

Opțiuni de răspuns:

4) 3.
25. Întrebare. Doriți să selectați întreaga foaie a unui registru de lucru Microsoft Excel, pe ce buton ar trebui să faceți clic?

Opțiuni de răspuns:

4) 4.
26. Întrebare. Doriți să selectați intervalul de coloane B:H pentru aceasta?


Opțiuni de răspuns:

1) ținând apăsată tasta Ctrl, faceți clic pe titlul coloanei B (zona 1), apoi faceți clic pe titlul coloanei H (zona 2);

2) faceți clic pe antetul coloanei B (zona 1), apăsați tasta Ctrl și în timp ce o țineți apăsați pe antetul coloanei H (zona 2);

3) faceți clic pe antetul coloanei B (zona 1), apăsați tasta Shift și în timp ce o țineți apăsați pe antetul coloanei H (zona 2);

4) țineți apăsată tasta Shift și faceți clic pe titlul coloanei B (zona 1), apoi faceți clic pe titlul coloanei H (zona 2).
27. Întrebare. Doriți să evidențiați rândurile necorelate 10 și 20 pentru asta?


Opțiuni de răspuns:

1) faceți clic pe antetul liniei 10 (zona 1) și apoi faceți clic pe antetul rândului 20 (zona 2);

2) faceți clic pe titlul liniei 10 (zona 1), apăsați tasta Ctrl și în timp ce o țineți apăsați pe antetul liniei 20 (zona 2);

3) faceți clic pe antetul liniei 10 (zona 1), apăsați tasta Shift și în timp ce o țineți apăsați pe antetul liniei 20 (zona 2);

4) țineți apăsată tasta Shift și faceți clic pe titlul liniei 10 (zona 1), apoi faceți clic pe titlul liniei 20 (zona 2).
28. Întrebare. În celula I7, trebuie să obțineți valoarea medie a intervalului de celule B7: H7?

Opțiuni de răspuns:

1) faceți clic pe celula I7, apoi accesați fila 1, utilizați comanda Average și apăsați tasta Enter;

2) faceți clic pe celula I7, apoi accesați fila 2, utilizați comanda Average și apăsați tasta Enter;

3) faceți clic pe celula I7, apoi accesați fila 3, utilizați comanda Average și apăsați tasta Enter;

4) faceți clic pe celula I7, apoi accesați fila 4, utilizați comanda Average și apăsați tasta Enter.
29. Întrebare. Trebuie să aranjați valorile intervalului de celule H7:H21 în ordine descrescătoare?


Opțiuni de răspuns:

1) faceți clic pe butonul 1;

2) faceți clic pe celula H6 și apoi faceți clic pe butonul 1;

3) faceți clic pe celula H6 și apoi faceți clic pe butonul 2;

4) faceți clic pe butonul 3.

30. Întrebare. Trebuie să formatați intervalul de celule J8-J22 ca în celula J7?


Opțiuni de răspuns:

1) faceți clic pe celula J7, apoi faceți clic pe butonul 1 și selectați intervalul de celule J8:J22 cu cursorul corespunzător;

2) faceți clic pe antetul coloanei J (butonul 2), apoi accesați fila 4 și utilizați comanda Format Painter;

3) selectați intervalul de celule J8:J22, apoi mergeți la fila 3 și utilizați comanda Format Painter;

4) faceți clic pe celula J7, apoi accesați fila 4 și selectați intervalul de celule J8:J22 cu cursorul corespunzător.
31. Întrebare. În diagrama prezentată mai jos, ați decis să schimbați scara axei verticale pentru o mai mare claritate, setând valoarea maximă la 5. La ce element de meniu trebuie să mergeți?


Opțiuni de răspuns:

4) 3.
32. Întrebare. Doriți ca eticheta „Rezumat” din tabelul din stânga să fie centrată în selecție, ca în tabelul din dreapta. Ce buton trebuie apăsat?

Opțiuni de răspuns:

4) 3.
33. Întrebare. Doriți ca eticheta „Rezumat” din tabelul din dreapta să fie poziționată așa cum este în tabelul din stânga. Ce buton trebuie apăsat?


Opțiuni de răspuns:

4) 3.
34. Întrebare. Ce valoare va apărea în celula selectată dacă funcția =MIN(H4:H8) este introdusă acolo?

Opțiuni de răspuns:

4) 11479.
35. Întrebare. Doriți ca numărul din celula din dreapta să fie afișat la fel ca numărul din stânga. Ce element de meniu ar trebui să fie selectat?


Opțiuni de răspuns:

4) 3.
36. Întrebare. Doriți ca celula C19 selectată să aibă diferența dintre celulele A19 - B19. De unde ar trebui să încep să introduc formula?

Opțiuni de răspuns:

1) cu un spațiu;

2) de la semnul minus;

3) de la semnul „egal”;

4) cu numele celulei.
37. Întrebare. Dacă întindeți zona selectată cu numerele 1, 2, 3 peste colțul din dreapta jos în timp ce țineți apăsat butonul stâng al mouse-ului, rezultatul va fi același ca pe fragment?

Opțiuni de răspuns:

1) ; 2) ;
3) ; 4) .

38. Întrebare. La ce filă ar trebui să accesați pentru a adăuga diapozitive la prezentarea dvs.?


Opțiuni de răspuns:

4) 3.
39. Întrebare. Ce buton ar trebui apăsat pentru a converti textul selectat din fragmentul 1 într-o listă cu marcatori, ca în fragmentul 2?


Opțiuni de răspuns:

4) 4.
40. Întrebare. Ce buton trebuie apăsat pentru a converti textul selectat al fragmentului 1 în aceeași formă ca în fragmentul 2?

Opțiuni de răspuns:

4) 3.
41. Întrebare. Ce buton ar trebui apăsat pentru ca cuvântul „Cell” din tabelul de sus să arate ca cel din cel de jos?


Opțiuni de răspuns:

42. Întrebare. Cum trec la modul prezentare de diapozitive?

Opțiuni de răspuns:

4) 3.
43. Întrebare. Ce element de meniu să selectați pentru a obține rezultatul, ca în imaginea din dreapta?


Opțiuni de răspuns:

4) 3.
44. Întrebare. Ce comandă rapidă ar trebui să folosesc pentru a lansa browserul pentru a vedea paginile WEB?

Opțiuni de răspuns:

4) 4.
45. Întrebare. Trebuie să mergeți imediat direct pe site-ul www.kremlin.ru. În ce câmp să introduceți adresa dorită?


Opțiuni de răspuns:

4) 4.
46. ​​Întrebare. Fără a închide filele site-ului kremlin.ru, doriți să accesați portalul gov.ru deschizându-l într-o filă nouă. Ce opțiune ar trebui folosită?

Opțiuni de răspuns:

4) 4.
47. Întrebare. Ce se întâmplă dacă faceți clic pe pictograma specificată?

Opțiuni de răspuns:

1) opriți încărcarea paginii;

2) închiderea browserului Microsoft Internet Explorer;

3) mergeți la pagina anterioară;

4) reîmprospătarea paginii.
48. Întrebare. Ați primit un e-mail cu mai mulți destinatari în copie. Dacă faceți clic pe butonul „Răspunde”, ce adrese vor apărea în câmpul „Către” al scrisorii dumneavoastră?

Opțiuni de răspuns:

1) Igor Zhuravlev;

2) Igor Zhuravlev, Andrey Kurosh, Alexey Chumachenko, Polina Vafina;

3) Igor Zhuravlev, Polina Vafina;

4) Va fi creat un e-mail cu un câmp gol „Către”.
49. Întrebare. Ați primit un e-mail cu mai mulți destinatari în copie. Ce se întâmplă când faceți clic pe butonul Răspuns tuturor?


Opțiuni de răspuns:

1) se va crea o scrisoare, unde va fi indicată în câmpul „Către” adresa de la care ați primit scrisoarea inițială;

2) se va crea o scrisoare, unde în câmpurile „To” și respectiv „Cc” vor fi indicați toți destinatarii enumerați în scrisoarea originală;

3) se va crea o scrisoare cu un câmp gol „Către”;

4) se va crea o scrisoare, unde destinatarii enumerați în scrisoarea inițială vor fi indicați în câmpul „Copiere”.
50. Întrebare. Ați primit un e-mail de la o anumită adresă. Există mai multe adrese în câmpul „Copiere”. Doriți să răspundeți numai persoanei de la a cărei adresă a venit scrisoarea. Ce buton trebuie apăsat?

Opțiuni de răspuns:

1) răspuns;

2) răspunde la toate;

3) creați un mesaj;

4) înainte.
51. Întrebare. Pentru ce este folosit butonul Go To?


Opțiuni de răspuns:

1) pentru a crea o sarcină;

2) să pregătească un răspuns în numele managerului;

3) astfel încât litera să fie întotdeauna marcată ca necitită;

4) a transmite o scrisoare unui subordonat.
52. Întrebare. Ce termen este definit mai jos?

Opțiuni de răspuns:

1) date deschise;

2) date guvernamentale deschise;

3) pașaport de date deschise.

Datele inițiale
Datele sursă pot fi orice set de date numerice, cum ar fi un interval orizontal sau vertical, o matrice bidimensională sau chiar intervale necontigue sau celule populate individual. Pentru comoditate, am luat o matrice verticală unidimensională A1: A5

Pentru a rezolva această problemă, puteți utiliza atât o coloană suplimentară cu o formulă intermediară, cât și o formulă matrice

1. Soluție cu coloană suplimentară

În B1 scrieți formula

DACA(A1<>0;A1;"")


și copiați-l în intervalul B2:B5. Această formulă intermediară într-o coloană suplimentară va „elimina” zerourile din datele originale, înlocuindu-le cu un șir gol ""

În C1 scrieți formula

Va returna rezultatul dorit - un număr 3

DACA(A1<>0;A1;"")


trebuie sa folosesti formula

DACA(A1>0;A1;"")


2. Soluție cu o formulă matrice
Pentru a rezolva această problemă, utilizați următoarea formulă matrice:

MIN(IF(A1:A5<>0;A1:A5))



Cum functioneaza: Aceasta este partea formulei A1:A5<>0 formează o matrice (TRUE:TRUE:FALSE:FALSE:TRUE), apoi folosind funcția IF() vom transforma matricea în următoarea: (5:7:FALSE:FALSE:3). Din moment ce functia MIN() ignoră textul și valorile logice, apoi în final obținem cel dorit - numărul 3

Dacă există numere negative în interval, atunci în loc de formulă

MIN(IF(A1:A5<>0;A1:A5))


trebuie sa folosesti formula

MIN(DAC(A1:A5>0;A1:A5))


3. Soluție cu o formulă simplă
Utilizați această formulă:

MIC (A1:A5,COUNTIF(A1:A5,0)+1)



Cum funcționează: Utilizarea funcției COUNTIF numărăm numărul de zerouri din interval și adăugând unul la acest număr returnăm primul cel mai mic număr mai mare decât zero folosind funcția CEL MAI PUŢIN

Dacă există numere negative în interval, atunci în loc de formulă

Funcţie MINîn Excel este folosit pentru a obține valoarea minimă dintr-un interval dat de celule.

Ce returnează funcția

Returnează cea mai mică valoare dintr-un interval de date.

Sintaxă

=MIN(număr1, , …)- Versiune în limba engleză

=MIN(număr1,[număr2],...)- versiunea rusă

Argumente ale funcției

  • numărul 1 (numărul 1)- primul număr al intervalului de date din care trebuie să obținem valoarea minimă;
  • , … ([numarul 2])- (opțional) al doilea număr al intervalului de date din care trebuie să obținem valoarea minimă. În total, 255 de valori numerice pot fi specificate ca argumente ale funcției.

Informații suplimentare

  • Celulele goale, expresiile booleene, textul sau linkurile sunt ignorate;
  • Dacă argumentele conțin celule cu o eroare sau text care nu poate fi convertit într-o valoare numerică, funcția va returna o eroare;
  • Argumentele funcției pot fi, de asemenea, nume, matrice sau referințe care conțin valori numerice;
  • Sunt luate în considerare valorile booleene și valorile text ale numerelor pe care le introduceți direct în lista de argumente;
  • Dacă argumentul este o matrice sau o referință, atunci funcția ia în considerare doar numerele. Celulele goale, booleanele sau textul dintr-o matrice sau referință sunt ignorate;
  • Dacă nu sunt specificate valori numerice în argumentele funcției, funcția va returna valoarea „0” (zero).
  • 8.12. Setarea paletei de culori (modurile 4,5,6) - funcția 0Bh
  • 8.15. Scrieți caracterul în modul TTY - funcția 0Eh
  • Toate funcțiile principale ale BIOS concepute pentru a funcționa cu adaptoare video sunt descrise în detaliu. Principalele funcții BIOS sunt implementate pe toate computerele din seria IBM PC/XT/AT, PS/2. Pentru fiecare grup de funcții, acest capitol conține exemple de programe.

    Utilizarea funcțiilor BIOS este de preferată programării registrelor, este mai sigură și mai fiabilă, deoarece există un BIOS video special instalat pe placa adaptorului. Acest BIOS garantează funcționarea corectă a registrelor și elimină posibilele deteriorări ale adaptorului și CRT.

    8.1. Selectarea modului de operare - functia 00h

    Funcția 00h întrerupere 10h vă permite să setați orice mod de funcționare al adaptorului video:

    Intrare: AH = 00h; AL = numărul modului de funcționare al adaptorului video care urmează să fie setat, dacă bit D7 = 1, atunci memoria video nu este șters când modul este setat; Ieșire: Nu este utilizat.

    Iată un exemplu de alegere a unui mod adaptor video:

    mov ah,0 ; funcția de selectare a modului de funcționare al adaptorului video mov al,mode ; selectați modul mod int 10h;

    8.2. Remodelarea cursorului - funcția 01h

    Funcția 01h vă permite să modificați dimensiunile verticale ale cursorului prin setarea marginilor superioare și inferioare ale cursorului (vezi Figura 9.1). Dimensiunile orizontale ale cursorului sunt întotdeauna aceleași și egale cu lățimea unui caracter.

    La intrare: AH = 00h - redimensionarea cursorului; CH = limita superioară a cursorului: D3-D0 limita superioară a cursorului D5-D4 00b ​​​​- cursor normal 01b - cursor invizibil 10b - cursor intermitent 11b - cursor intermitent rapid D7-D6 nu este utilizat; CL = limita inferioară a cursorului (0-31). Ieșire: Nu este utilizat.

    Cursorul este afișat numai în modurile text ale adaptorului video.

    Când selectați modul adaptor video, BIOS-ul setează următoarele valori pentru limitele superioare și inferioare ale cursorului:

    • Pentru afișajele monocrome și color îmbunătățite, limita superioară este de 11 ore, iar limita inferioară este de 12 ore.
    • Pentru un afișaj color, limita superioară = 6h și limita inferioară = 7h.

    Figura 9.1 Schimbați poziția cursorului.

    8.3. Schimbarea poziției cursorului - funcția 02h

    Funcția 02h setează poziția curentă a cursorului pe ecranul de afișare.

    Dacă memoria video este împărțită în mai multe pagini, atunci fiecare dintre ele are propriul său cursor, ale cărui coordonate pot fi setate separat.

    Coordonatele cursorului determină nu numai locul de pe ecran unde este afișat, ci și poziția din care funcțiile corespunzătoare BIOS vor afișa linii sau caractere individuale pe ecran.

    La intrare: AH = 02h - setarea poziției cursorului; BH = numărul paginii memoriei video; DH = numărul liniei (0-24); DL = numărul coloanei (0-79). Ieșire: Nu este utilizat.

    8.4. Determinarea poziției și formei cursorului - funcția 03h

    Funcția 03h vă permite să aflați dimensiunea și coordonatele curente ale cursorului pentru orice pagină de memorie video:

    La intrare: AH = 03h - definirea dimensiunii și coordonatele cursorului BH = numărul paginii memorie video. Ieșire: CH = limita superioară a cursorului; CL = marginea inferioară a cursorului; DH = poziţia liniei curente a cursorului; DL = poziția coloanei curente a cursorului.

    8.5. Utilizarea stiloului luminos - funcția 04h

    Funcția 04h vă permite să determinați dacă stiloul luminos este conectat sau nu. Dacă este conectat, puteți determina coordonatele acestuia. Funcția vă permite să aflați poziția stiloului luminos atât în ​​coordonate text, cât și grafice.

    Rețineți că stiloul luminos EGA nu este pe deplin compatibil cu CGA în software, drept urmare programele care acceptă posibilitatea de a utiliza un creion luminos pentru un adaptor video CGA nu vor funcționa corect cu un adaptor video EGA. Adaptorul video VGA nu are un stilou luminos.

    La intrare: AH = 04h. La ieșire: AH = 0 - stiloul luminos nu este conectat (toate celelalte registre nu conțin informații utile); AH = 1 - stiloul luminos este conectat; CH = coordonatele poziției verticale a cursorului în pixeli (moduri grafice cu rezoluție mică); CX = coordonatele poziției verticale a cursorului în pixeli (moduri grafice de înaltă rezoluție); BX = coordonatele poziției orizontale a cursorului în pixeli; DH = coordonatele poziției verticale a cursorului în numere de linii; DL = coordonatele poziției orizontale a cursorului în numerele coloanei.

    Iată un exemplu de utilizare a acestei funcții:

    mov ah,4 int 10h; determinați poziția stiloului luminos cmp ah,0 ; sari la eticheta not_pen if jz not_pen ; stiloul nu este conectat mov light_pen_col,dl ; salvați coordonatele creionului luminos mov light_pen_row,dh

    8.6. Schimbarea paginii de memorie video activă - funcția 05h

    Funcția 05h vă permite să schimbați pagina de memorie video activă. Pagina de memorie video activă este afișată pe ecran.

    La intrare: AH = 05h - selectarea paginii de memorie video activă; AL = numărul paginii de memorie video care va deveni activ. Ieșire: Nu este utilizat.

    8.7. Restrânge caseta de text în sus - Caracteristica 06h

    Puteți minimiza fereastra ecranului activ în sus (când lucrați în modul text) folosind funcția 06h. Fereastra este specificată de coordonatele colțurilor din stânga sus și din dreapta jos. Când fereastra este minimizată, în partea de jos apar linii noi goale (linii pline cu spații), iar liniile de sus dispar. Zona ecranului din afara ferestrei nu se schimbă.

    La intrare: AH = 06h - rulare geam; AL = numărul de linii derulabile, dacă este egal cu zero, atunci se derulează întreaga fereastră; BH = atribut folosit pentru liniile care apar în partea de jos a ferestrei; CH = numărul de linie al colțului din stânga sus al ferestrei; CL = numărul coloanei din colțul din stânga sus al ferestrei; DH = numărul rândului colțului din dreapta jos al ferestrei; DL = numărul coloanei din colțul din dreapta jos al ferestrei. Ieșire: Nu este utilizat.

    Faptul că, atunci când sunt minimizate, în partea de jos a ferestrei apar linii goale, care ulterior umplu întreaga fereastră, poate fi folosit pentru a șterge rapid ecranul. Pentru a face acest lucru, este suficient să setați dimensiunea ferestrei egală cu dimensiunea ecranului și să o derulați în sus cu 25 sau 0 linii. Iată un fragment de program în limbaj de asamblare care poate fi folosit pentru a șterge ecranul de afișare:

    împinge; salvează conținutul registrului es xor ax,ax ; setați registrul es la zero mișcări, ax; segment de memorie mov ah,6 ; funcția de rulare a ecranului mov al,0 ; curățați întregul geam mov bh,7 ; setați atributul normal xor cx,cx ; setați colțul din stânga sus al ferestrei la (0,0); Conținutul variabilelor este folosit pentru a determina dimensiunile ecranului; Caracteristici video BIOS. Locație de memorie situată la adresa 0000:0484 ; conține un număr cu unu mai mic decât numărul de linii de pe ecran. ; La adresa 0000:044A este o variabilă care specifică numărul de caractere; in linie. Mai detaliat, variabilele funcției video BIOS vor fi; revizuită mai târziu. mov dh,es: ; determina numarul de linii in acest mod mov dl,es: ; determina numarul de caractere din sirul dec dl int 10h ; ecran de apel roll up pop es ; restaurare registru es

    8.8. Restrângeți caseta de text în jos - funcția 07h

    Puteți minimiza fereastra ecranului activ (când lucrați în modul text) folosind funcția 07h. Fereastra este specificată de coordonatele colțurilor din stânga sus și din dreapta jos. Pe măsură ce derulați, noi linii goale (linii pline cu spații) apar în partea de sus a ferestrei, iar liniile de jos dispar. Zona ecranului din afara ferestrei nu se schimbă.

    La intrare: AH = 07h - coborârea ferestrei; AL = numărul de linii derulabile, dacă este egal cu zero, atunci se derulează întreaga fereastră; BH = atribut folosit pentru rândurile care apar în partea de sus a ferestrei; CH = numărul de linie al colțului din stânga sus al ferestrei; CL = numărul coloanei din colțul din stânga sus al ferestrei; DH = numărul rândului colțului din dreapta jos al ferestrei; DL = numărul coloanei din colțul din dreapta jos al ferestrei. Ieșire: Nu este utilizat.

    Această funcție poate fi folosită pentru a șterge fereastra în același mod ca și funcția 06h.

    8.9. Citirea unui simbol și a atributelor acestuia - funcția 08h

    La intrare: AH = 08h - citirea simbolului și a atributelor acestuia; BH = numărul paginii memoriei video. Ieșire: AL = cod de caractere ASCII; AH = octet de atribut caracter.

    Următorul pirmer citește caracterul și atributul acestuia din poziția curentă a cursorului de pe pagină:

    ... mov ah,8 ; citește caracterul și atributele acestuia mov bh,page ; selectați pagina de memorie video int 10h; citește caracterul și atributul său mov char,al ; salvați codul de caractere ASCII rezultat mov attr,ah ; si atributul ei...

    8.10. Scrieți caracterul cu atribute la poziția curentă a cursorului - funcția 09h

    Funcția vă permite să scrieți unul sau mai multe caractere identice cu atribute la poziția curentă a cursorului. În acest caz, înregistrarea poate avea loc atât în ​​paginile active, cât și în cele inactive ale memoriei video. Poziția cursorului nu se schimbă după efectuarea operației de scriere. Caracterele de control, cum ar fi întoarcerea carușului și avansul de linie, nu au niciun efect și sunt scrise ca caractere normale. Această funcție funcționează atât în ​​modul text, cât și în modul grafic.

    La intrare: AH = 09h - introducerea caracterelor cu un atribut; AL = codul ASCII al caracterului care se scrie; BH = numărul paginii memoriei video; BL = atribut (pentru modul text) sau culoare (pentru modul grafic); CX = numărul de caractere de scris. Ieșire: Nu este utilizat.

    Următorul este un exemplu de utilizare a funcțiilor BIOS discutate pentru a selecta modul de operare al adaptorului video, a selecta pagina de memorie video activă, a schimba forma și coordonatele cursorului și pentru a afișa caractere pe ecranul de afișare:

    TITLE BIOS_FUNCTION .MODEL tiny DOSSEG .STACK 100h .DATA mesaj DB "INT 10h", 0 video_page DB 2 .CODE .STARTUP ; selectați modul adaptor video 0 xor ah,ah xor al,al int 10h ; schimba forma cursorului mov ah,1 ; cursor start - linia 0; sfârşitul cursorului - linia 7 mov ch,0 mov cl,7 int 10h ; selectați pagina memoriei video - video_page mov ah,5 mov al,video_page int 10h ; derulează fereastra ecranului mov ah,6 xor al,al ; derulați întreaga fereastră mov bh,0FFh ; utilizați atributul 0FFh mov cl,10 ; setați colțul din stânga sus al ferestrei mov ch,5 mov dl,30 ; setați colțul din dreapta jos al ferestrei mov dh,15 int 10h ; setați coordonatele cursorului mov ah,2 mov bh,video_page ; selectează pagina video_page mov dh,12 ; linia 12 mov dl,20 ; coloana 20 int 10h ;afiseaza mesajul sir pe pagina de ecran activ mov si,OFFSET apel mesaj WriteString .EXIT 0 ; procedura WriteString afișează un șir având; offset si in segment ds WriteString PROC ; determinați pagina actuală a ecranului activ mov ah,0Fh int 10h ; numărul paginii active în registrul bh ; obțineți coordonatele cursorului în dx mov ah,3 int 10h; într-o buclă, afișăm caracterele șirului next_char: mov ah,9 lodsb cmp al,0 ; găsiți sfârșitul liniei je exit_proc ; dacă se ajunge la capătul șirului, se încheie procedura mov bl,8 ; pentru afisarea caracterelor folositi atributul 8 mov cx,1 ; caracterele șirului sunt scoase fără repetare int 10h ; mutați cursorul la următoarea poziție de linie mov ah,2 inc dl int 10h jmp next_char exit_proc: ret WriteString ENDP END

    8.11. Scrieți caracterul în poziția curentă a cursorului - funcția 0Ah

    Funcția vă permite să scrieți un caracter la poziția curentă a cursorului pe orice pagină de memorie video. Ca și în funcția anterioară, puteți scrie mai multe caractere identice simultan. Atributele caracterelor nu sunt setate, dar sunt folosite valorile lor vechi din operațiunile anterioare de scriere. După operația de scriere, poziția cursorului nu se modifică. Caracterele de control, cum ar fi întoarcerea carușului și avansul de linie, nu au niciun efect și sunt scrise ca caractere normale.

    La intrare: AH = 10h - introducere caracter fără atribut; AL = codul ASCII al caracterului care se scrie; BH = numărul paginii memoriei video; BL = culoare (pentru modul grafic); CX = numărul de caractere de scris. Ieșire: Nu este utilizat.

    Dacă pe adaptorul video EGA este scris un caracter în modul grafic, iar bitul D7 al registrului BL conține unul, atunci noul caracter este suprapus pe conținutul curent al ecranului conform logicii operațiunii booleene EXCLUSIVE OR.

    8.12. Setarea paletei de culori (modurile 4,5,6) - funcția 0Bh

    Această funcție vă permite să selectați una dintre cele două palete de culori standard (vezi tabelul 9.1). Funcția este utilizată pentru a asigura compatibilitatea cu adaptorul video CGA.

    Tabelul 9.1 Paletele de culori standard în modurile 4,5,6.

    Funcția 0Bh are următorul format de apel:

    La intrare: AH = 0Bh - setarea paletei de culori; BH = 0, apoi BL = culoarea fundalului și a cadrului (pentru modul grafic) sau culoarea cadrului (pentru modul text) BH = 1, apoi BL = numărul paletei (0 sau 1). Ieșire: Nu este utilizat.

    8.13. Ieșire pixel - funcție 0Ch

    Utilizarea funcțiilor BIOS pentru a crea imagini, în special pentru a afișa pixeli individuali, deși mai lentă decât scrierea directă în memorie video și programarea registrelor, este mai fiabilă în ceea ce privește compatibilitatea pentru diferite moduri și adaptoare video.

    Funcția este utilizată în modurile grafice pentru a scrie un pixel de o anumită culoare pe orice pagină a memoriei video. Trebuie remarcat faptul că adaptorul video CGA are o singură pagină de memorie video definită în modurile grafice. Valorile de culoare care pot fi utilizate în diferite moduri sunt enumerate în Tabelul 9.2:

    Culorile corespunzătoare numerelor de culoare din tabel pot fi vizualizate în capitolul „Moduri de funcționare adaptor video”.

    Tabelul 9.2 Valori posibile ale numerelor de culoare pentru diferite moduri.

    Formatul pentru apelarea funcției 0Ch este prezentat mai jos:

    La intrare: AH = 0Ch - înregistrare pixeli; AL = numărul de culoare; BH = numărul paginii (nu este folosit pentru CGA); CX = coordonata X; DX = coordonata Y. Ieșire: Nu este utilizat.

    Dacă bitul D7 al registrului AL conține unul, atunci noul pixel este suprapus conținutului curent al ecranului conform logicii operației booleene EXCLUSIVE OR.

    Rețineți că originea sistemului de coordonate este în colțul din stânga sus al ecranului, iar axele de coordonate sunt direcționate după cum urmează: axa X este la dreapta, axa Y este în jos. În plus, dacă nu se specifică altfel, vom folosi întotdeauna acest sistem de coordonate.

    // Demonstrarea funcțiilor - alegerea unei palete de culori și a ieșirii // un pixel. #include #include void main(void); void main(void) ( uniunea REGS inregs, outregs; unsigned char i, j; // setați modul adaptor video 4 // (grafic - 320x200, 4 culori) inregs.h.ah = 0x0; inregs.h.al = 0x4 ; int86(0x10, &inregs, &outregs); // setează culoarea de fundal inregs.h.ah = 0x0B; inregs.h.bh = 0x0; //setează culoarea de fundal inregs.h.bl = 0x6; //numărul de culoare de fundal pentru a seta int86 (0x10, &inregs, &outregs); for(i = 0; i< 2; i++) { // устанавливаем цветовую палитру inregs.h.ah = 0x0B; inregs.h.bh = 0x1; // установка палитры inregs.h.bl = i; // номер палитры int86(0x10, &inregs, &outregs); // выводим массив точек for(j = 0; j < 64; j++) { // выводим на экран дисплея точку inregs.h.ah = 0x0C; inregs.h.al = (unsigned char)(j / 16);// номер цвета inregs.x.cx = 0x10 + j; // x-координата точки inregs.x.dx = 0x10 + j; // y-координата точки int86(0x10, &inregs, &outregs); } getch(); } }

    8.14. Citirea pixelilor - functia 0Dh

    Funcția vă permite să determinați culoarea oricărui pixel de pe ecran după coordonatele acestuia. Funcția este utilizată numai în modurile grafice ale adaptoarelor video.

    La intrare: AH = 0Dh - definirea culorii pixelilor; BH = numărul paginii (nu este folosit pentru CGA); CX = coordonata X; DX = coordonata Y; Ieșire: AL = numărul de culoare a pixelului.

    Iată un fragment de program care determină numărul de culoare al unui pixel care are coordonatele x_pos și y_pos:

    mov ah,0Dh mov cx,x_pos mov dx,y_pos int 10h ; salvați valoarea rezultată mov color_number

    8.15. Scrieți caracterul în modul TTY - funcția 0Eh

    Funcția scrie un caracter pe ecran în modul teletype: caracterul este afișat la poziția curentă a cursorului, după care cursorul se deplasează la dreapta cu o poziție. Dacă este necesar, cursorul se deplasează automat pe o nouă linie, iar când întregul ecran este plin, ecranul se prăbușește pe verticală. În acest din urmă caz, linia de sus a ecranului dispare, iar mai jos apare o nouă linie goală, iar cursorul este plasat la începutul său.

    Această funcție gestionează următoarele caractere de control: bip (BELL), întoarce cursorul înapoi cu o poziție (BACKSPACE), return car (CARRIAGE RETURN) și avans de linie (LINEFEED).

    În modurile text, caracterele sunt afișate cu atributele utilizate anterior. În modurile grafice, este posibil să setați culoarea simbolului afișat.

    Următorul este formatul apelului funcției:

    La intrare: AH = 0Eh - scriere caracter în modul teletype; AL = codul ASCII al caracterului care se scrie; BH = numărul de pagină al memoriei video (numai în modurile text)?; BL = culoarea caracterului (în modurile grafice). Ieșire: Nu este utilizat.

    Iată textul procedurii WriteStringT, care afișează șirul la offset si în segmentul ds folosind funcția de întrerupere INT 10h 0Eh:

    WriteStringT PROC ; determinați pagina actuală a ecranului activ mov ah,0Fh int 10h ; numărul paginii active în registrul bh ; într-o buclă, afișăm caracterele șirului next_char: mov ah,0Eh lodsb ; obține următorul caracter al șirului cmp al,0 ; găsiți sfârșitul liniei je exit_proc ; dacă se ajunge la sfârșitul șirului, atunci se încheie procedura int 10h jmp next_char exit_proc: ret WriteStringT ENDP

    8.16. Determinarea modului de funcționare curent al adaptorului video - funcția 0Fh

    Funcția vă permite să determinați numărul modului curent de funcționare al adaptorului video, numărul paginii active și numărul de caractere pe linie a ecranului. Lista diferitelor moduri este dată în Tabelul 3.1. Formatul funcției este următorul:

    La intrare: AH = 0Fh - determinarea modului curent al adaptorului video. Ieșire: AH = numărul de caractere pe linie; AL = numărul modului curent; BH = numărul paginii video activ.

    Top articole similare