ms-dos, pascal

53
1 CUPRINS STRUCTURA CALCULATORULUI ...................................................................................................... 3 UNITATEA CENTRALĂ................................................................................................................................................................. 5 MEMORIA INTERNĂ .................................................................................................................................................................... 6 MEMORIA EXTERNĂ ................................................................................................................................................................... 7 DISPOZITIVE DE INTRARE............................................................................................................................................................ 8 DISPOZITIVE DE IEŞIRE ............................................................................................................................................................. 10 DISPOZITIVE DE INTRARE-IEŞIRE .............................................................................................................................................. 12 SISTEMUL DE OPERARE ..................................................................................................................... 12 FUNCŢIILE SISTEMULUI DE OPERARE. TIPURI DE SISTEME DE OPERARE. ................................................................................... 13 PĂRŢILE COMPONENTE ALE SISTEMULUI DE OPERARE MS-DOS..................................... 14 PROGRAMUL ÎNCĂRCĂTOR BOOT RECORD........................................................................................................................... 14 EXTENSIA BIOS FIŞIERUL IO.SYS ........................................................................................................................................ 14 NUCLEUL MS-DOS .................................................................................................................................................................. 14 INTERFAŢA UTILIZATOR COMMAND.COM......................................................................................................................... 15 FIŞIERE ŞI DIRECTOARE.................................................................................................................... 16 COMENZI INTERNE .............................................................................................................................. 18 COMENZI REFERITOARE LA DIRECTOARE .................................................................................................................................. 18 VIZUALIZAREA CONŢINUTULUI UNUI DIRECTOR ....................................................................................................................... 18 Crearea unui director .......................................................................................................................................................... 19 Ştergerea unui director ........................................................................................................................................................ 20 Schimbarea directorului curent ........................................................................................................................................... 20 COMENZI REFERITOARE LA FIŞIERE .......................................................................................................................................... 20 Copierea fişierelor ............................................................................................................................................................... 20 Ştergerea unui fişier ............................................................................................................................................................ 21 Tipărirea conţinutului unui fişier pe ecran .......................................................................................................................... 22 Schimbarea numelui unui fişier ........................................................................................................................................... 22 COMENZI REFERITOARE LA ECRAN DATĂ ŞI TIMP...................................................................................................................... 22 ŞTEGEREA ECRANULUI ............................................................................................................................................................. 22 MODIFICAREA PROMPT-ULUI DE SISTEM................................................................................................................................... 22 AFIŞAREA DATEI CURENTE ....................................................................................................................................................... 23 AFIŞAREA TIMPULUI CURENT ................................................................................................................................................... 23 ALTE COMENZI INTERNE........................................................................................................................................................... 23 VALIDAREA ÎNTRERUPERILOR PROGRAMELOR ......................................................................................................................... 23 AFIŞAREA VERSIUNII SISTEMULUI DE OPERARE ........................................................................................................................ 24 AFIŞAREA ETICHETEI DE VOLUM .............................................................................................................................................. 24 PROBLEMA REZOLVATA ........................................................................................................................................................... 24 SISTEMUL DE OPERARE WINDOWS ............................................................................................... 27 GENERALITĂŢI ......................................................................................................................................................................... 27 ECRANUL DE LUCRU (DESKTOP), PORNIREA ŞI OPRIREA SISTEMULUI ........................................................................................ 28 ŞTERGEREA FIŞIERELOR ŞI A DOSARELOR ................................................................................................................................. 30 REFACEREA FIŞIERELOR ŞTERSE ............................................................................................................................................... 30 REDENUMIREA FIŞIERELOR ŞI DOSARELOR ............................................................................................................................... 31 CREAREA DE SCURTĂTURI PE DESKTOP .................................................................................................................................... 31 GOLIREA DOSARULUI RECYCLE BIN ......................................................................................................................................... 31 UTILIZAREA MENIURILOR RAPIDE............................................................................................................................................. 32 ALGORITMI .......................................................................................................................................... 344 SIMBOLURI GRAFICE UTILIZATE ÎN REPREZENTAREA ALGORITMILOR PRIN SCHEME LOGICE ................................................... 344 REPREZENTAREA GRAFICĂ A STRUCTURILOR ALGORITMICE FUNDAMENTALE ŞI CODIFICAREA LOR ÎN PSEUDOCOD ŞI TURBO PASCAL .................................................................................................................................................................................... 35 LIMBAJUL TURBO PASCAL ............................................................................................................... 36 STRUCTURA GENERALĂ A UNUI PROGRAM................................................................................................................................ 36 LEXICUL LIMBAJULUI ............................................................................................................................................................... 37 TIPURI DE DATE ........................................................................................................................................................................ 38 Tipuri întregi........................................................................................................................................................................ 39

Upload: gabriel-budui

Post on 01-Jul-2015

332 views

Category:

Documents


5 download

TRANSCRIPT

Page 1: MS-DOS, Pascal

1

CUPRINS

STRUCTURA CALCULATORULUI ...................................................................................................... 3 UNITATEA CENTRALĂ................................................................................................................................................................. 5 MEMORIA INTERNĂ .................................................................................................................................................................... 6 MEMORIA EXTERNĂ ................................................................................................................................................................... 7 DISPOZITIVE DE INTRARE............................................................................................................................................................ 8 DISPOZITIVE DE IEŞIRE ............................................................................................................................................................. 10 DISPOZITIVE DE INTRARE-IEŞIRE .............................................................................................................................................. 12

SISTEMUL DE OPERARE..................................................................................................................... 12 FUNCŢIILE SISTEMULUI DE OPERARE. TIPURI DE SISTEME DE OPERARE. ................................................................................... 13

PĂRŢILE COMPONENTE ALE SISTEMULUI DE OPERARE MS-DOS..................................... 14 PROGRAMUL ÎNCĂRCĂTOR BOOT RECORD........................................................................................................................... 14 EXTENSIA BIOS – FIŞIERUL IO.SYS........................................................................................................................................ 14 NUCLEUL MS-DOS.................................................................................................................................................................. 14 INTERFAŢA UTILIZATOR – COMMAND.COM......................................................................................................................... 15

FIŞIERE ŞI DIRECTOARE.................................................................................................................... 16

COMENZI INTERNE.............................................................................................................................. 18 COMENZI REFERITOARE LA DIRECTOARE.................................................................................................................................. 18 VIZUALIZAREA CONŢINUTULUI UNUI DIRECTOR ....................................................................................................................... 18

Crearea unui director .......................................................................................................................................................... 19 Ştergerea unui director........................................................................................................................................................ 20 Schimbarea directorului curent ........................................................................................................................................... 20

COMENZI REFERITOARE LA FIŞIERE .......................................................................................................................................... 20 Copierea fişierelor............................................................................................................................................................... 20 Ştergerea unui fişier ............................................................................................................................................................ 21 Tipărirea conţinutului unui fişier pe ecran.......................................................................................................................... 22 Schimbarea numelui unui fişier ........................................................................................................................................... 22

COMENZI REFERITOARE LA ECRAN DATĂ ŞI TIMP...................................................................................................................... 22 ŞTEGEREA ECRANULUI ............................................................................................................................................................. 22 MODIFICAREA PROMPT-ULUI DE SISTEM................................................................................................................................... 22 AFIŞAREA DATEI CURENTE ....................................................................................................................................................... 23 AFIŞAREA TIMPULUI CURENT ................................................................................................................................................... 23 ALTE COMENZI INTERNE........................................................................................................................................................... 23 VALIDAREA ÎNTRERUPERILOR PROGRAMELOR ......................................................................................................................... 23 AFIŞAREA VERSIUNII SISTEMULUI DE OPERARE ........................................................................................................................ 24 AFIŞAREA ETICHETEI DE VOLUM .............................................................................................................................................. 24 PROBLEMA REZOLVATA ........................................................................................................................................................... 24

SISTEMUL DE OPERARE WINDOWS ............................................................................................... 27 GENERALITĂŢI ......................................................................................................................................................................... 27 ECRANUL DE LUCRU (DESKTOP), PORNIREA ŞI OPRIREA SISTEMULUI ........................................................................................ 28 ŞTERGEREA FIŞIERELOR ŞI A DOSARELOR................................................................................................................................. 30 REFACEREA FIŞIERELOR ŞTERSE ............................................................................................................................................... 30 REDENUMIREA FIŞIERELOR ŞI DOSARELOR ............................................................................................................................... 31 CREAREA DE SCURTĂTURI PE DESKTOP.................................................................................................................................... 31 GOLIREA DOSARULUI RECYCLE BIN......................................................................................................................................... 31 UTILIZAREA MENIURILOR RAPIDE............................................................................................................................................. 32

ALGORITMI .......................................................................................................................................... 344 SIMBOLURI GRAFICE UTILIZATE ÎN REPREZENTAREA ALGORITMILOR PRIN SCHEME LOGICE ................................................... 344 REPREZENTAREA GRAFICĂ A STRUCTURILOR ALGORITMICE FUNDAMENTALE ŞI CODIFICAREA LOR ÎN PSEUDOCOD ŞI TURBO PASCAL .................................................................................................................................................................................... 35

LIMBAJUL TURBO PASCAL ............................................................................................................... 36 STRUCTURA GENERALĂ A UNUI PROGRAM................................................................................................................................ 36 LEXICUL LIMBAJULUI ............................................................................................................................................................... 37 TIPURI DE DATE ........................................................................................................................................................................ 38

Tipuri întregi........................................................................................................................................................................ 39

Page 2: MS-DOS, Pascal

2

Tipul caracter ...................................................................................................................................................................... 39 Tipul boolean (logic) ........................................................................................................................................................... 39 Tipuri reale .......................................................................................................................................................................... 40

CITIREA ŞI AFIŞAREA DATELOR................................................................................................................................................ 40 Proceduri de citire a datelor ............................................................................................................................................... 40 Proceduri de afişare a datelor............................................................................................................................................. 41

INTRODUCERE IN PROGRAMARE CU AJUTORUL PROBLEMELOR REZOLVATE ................................................. 42

Page 3: MS-DOS, Pascal

3

STRUCTURA CALCULATORULUI

Informatica reprezintă un complex de discipline prin care se asigură prelucrarea raţională a informaţiilor prin intermediul maşinilor de calcul automate - calculatoare. Astăzi informatica cuprinde nouă discipline şi anume:

Arhitectura calculatoarelor – studiază modul în care sunt organizate anumite componente hardware şi modul lor de conectare în vederea obţinerii unui sistem eficient.

Sisteme de operare - studiază modul în care trebuie să fie organizate programele ce controlează şi coordonează toate operaţiile din sistemul de calcul.

Algoritmi şi structuri de date – studiază metodele prin care se pot obţine aplicaţii care să prelucreze diferite clase de informaţii, modul în care vor fi reprezentate informaţiile care vor fi prelucrate şi metodele de optimizare a paşilor necesari pentru realizarea aplicaţiilor.

Limbaje de programare – studiază notaţiile (limbajele) prin care vor fi reprezentate algoritmii şi structurile de date, astfel încât aplicaţia să poată fi prelucrată. Aceste limbaje sunt apropiate de limbajul natural (uman) şi pot fi uşor traduse în secvenţe de comenzi pe care să le înţeleagă calculatorul.

Ingineria programării – studiază metodele prin care poate fi automatizată activitatea de proiectare a aplicaţiilor, de prelucrare a informaţiilor, astfel încât să se obţină programe corecte, eficiente, fără erori şi uşor de exploatat.

Calcule numerice şi simbolice – studiază descrierea fenomenelor din lumea reală prin intermediul fenomenelor matematice, care pot fi manipulate algebric, astfel încât să se obţină modele matematice, uşor de descris prin algoritmi. Modelele matematice permit descrierea şi reprezentarea în sistemul de calcul a fenomenelor complexe: curenţii marini, traiectoriilor sateliţilor şi planetelor, zborul avioanelor.

Sisteme de gestiune a bazelor de date – studiază modul în care pot fi organizate cantităţi mari de date ce nu necesită prelucrarea prin calcule matematice complexe. Este cazul informaţiilor prelucrate în procesele economico-sociale, în întreprinderi, în administraţie.

Inteligenţă artificială – studiază modul prin care pot fi automatizate aplicaţiile pe care omul le realizează prin metode “inteligente” , care sunt dificil de descris şi de caracterizat cu ajutorul algoritmilor cum sunt: înţelegerea unui limbaj, crearea de noi teorii matematice, mutarea pieselor la jocul de şah, etc.

Animaţie şi robotică – studiază metodele prin care pot fi generate şi prelucrate imaginile şi modul în care se poate răspunde unei situaţii din exterior prin acţionarea unui robot.

Informaţia este un mesaj obiectiv care elimină nedeterminarea în legătură cu realizarea unui anumit eveniment. Unitatea de măsură folosită pentru măsurarea cantităţii de informaţie este informaţia elementară. Informaţia elementară reprezintă forma cea mai simplă sub care se găseşte sau poate fi concepută informaţia. Măsura informaţiei elementare este bitul. Biţii se grupează câte 8 şi formează 1byte – 1 octet – 8 biţi.

Octetul sau byte-ul reprezintă unitatea de măsură a informaţiei. Multiplii octetului sunt:

1 Kbyte = 1 Koctet = 210 Octeţi = 1024 Octeţi 1 Moctet = 210 Kocteţi = 1024 Kocteţi = 220 Octeţi 1 Goctet = 210 Mocteţi = 220 Kocteţi = 230 Octeţi

Calculatorul reprezintă o maşină care prelucrează automat informaţia. Calculatorului trebuie să i se furnizeze datele de intrare şi programul de prelucrare pe baza cărora furnizează datele de ieşire. Calculatorul este alcătuit din două componente:

Hardware – partea materială – echipamente fizice. Software – partea logică – programe şi date.

Componenta hardware a unui calculator este formată din echipamentele fizice în care circuitele electronice asigură prelucrarea automată a informaţiei din echipamentele ce asigură comunicarea dintre om şi maşină. Componenta hardware trebuie să asigure următoarele funcţii: funcţia de memorare, funcţia de comandă şi control, funcţia de prelucrare, funcţia de intrare-ieşire. Componenta software a calculatorului este formată din programele destinate să asigure conducerea şi controlul procesului de prelucrare, precum şi efectuarea unor lucrări curente. Programul reprezintă o colecţie organizată de comenzi ce se dau calculatorului. Aceste comenzi se numesc instrucţiuni. Instrucţiunile sunt codificate în binar şi sunt tratate de către unitatea de comandă

Page 4: MS-DOS, Pascal

4

şi control. În instrucţiune nu se precizează operanzii ci adresele de memorie unde se găsesc operanzii. Software-ul conţine două mari componente: sisteme de operare şi programele de aplicaţie. Sistemul de operare – operating system – software de bază – este format din programele care ajută calculatorul să lucreze în general, supervizând întreaga activitate. El asigură legătura între componentele logice şi fizice ale calculatorului. Programele de aplicaţie – application programs – sunt mulţimi organizate de instrucţiuni care se dau calculatorului pentru a efectua anumite operaţii specifice unei aplicaţii dorite de utilizator. Programele de aplicaţie sunt scrise de către programatori la cererea utilizatorilor şi codifică într-un limbaj de programare algoritmul de rezolvare al unei probleme. Calculatorul personal – Personal Computer – PC – provine de la numele dat de firma IBM primului microcalculator construit în 1981 pe baza microprocesorului Intel 8088. Microcalculatorul construit de IBM pe baza microprocesorului Intel 8088 oferea avantajul unui sistem deschis, pe care utilizatorul şi-l putea reconfigura uşor adăugând noi placi în interiorul calculatorului. Structura IBM a devenit un standard industrial. Pe baza acestuia s-a dezvoltat un software standard. Calculatoarele construite de firme ca: Toshiba, Compaq, Hewlett Packard folosesc aceleaşi principii şi idei şi se numesc calculatoare compatibile IBM. Calculatoarele compatibile IBM au cucerit repede piaţa prin trei argumente: performanţe identice, aceeaşi calitate, preţuri cu 15-20% mai mici. Privind un microcalculator se observă trei părţi componente: o cutie numită unitate de sistem – system unit, tastatura – keyboard, ecranul – display. Aceste componente se văd din exteriorul calculatorului Dacă desfacem unitatea de sistem se observă o construcţie modulară. Partea cea mai importantă este placa de bază – system board – mother board. Ea conţine circuitele electronice cele mai importante: microprocesorul, circuitul de ceas – tact – clock care stabileşte ritmul de lucru al calculatorului, blocurile de memorie RAM, memoria ROM. Lângă placa de bază se găseşte sursa de alimentare – power suply – care asigură alimentarea cu tensiune a tuturor componentelor calculatorului. Unităţile de discuri sunt singurele componente de natură mecanică. Pe placa de bază se găsesc conectorii la magistrală – bus connectors – prin intermediul cărora se leagă opţional la placa de bază, plăcile adaptoare sau interfeţele pentru imprimantă, modem, monitor, unităţi de discuri. Dacă aceste unităţi adaptoare ar fi plasate pe placa de bază, ar trebui definite conexiunile pe placă. Sistemul ar avea o flexibilitate redusă şi ar fi un sistem închis. Această problemă a fost rezolvată prin intermediul magistralei – bus- care reprezintă un canal de comunicaţie între plăcile din calculator. Magistrala este formată dintr-un mănunchi de trasee de cupru , prin care circulă informaţia sub forma unor impulsuri electrice care corespund cifrelor binare 0 şi 1. Plăcile adaptoare sunt introduse în sloturi. Sloturile sunt conectoare aflate în legătură cu magistrala şi comunică cu microprocesorul. Cele mai importante plăci adaptoare sunt:

Adaptorul video – display screen adapter – care transformă informaţia (date şi comenzi) în imagini pe ecran.

Adaptorul unităţii de disc – disk drive adapter – transformă informaţia în înregistrări pe suportul magnetic şi invers.

Plăcile de memorie – se adaugă la memoria de bază pentru a mări capacitatea memoriei interne. Porturile seriale şi paralele – serial and paralel ports – prin intermediul lor se pot conecta

dispozitivele periferice. Configuraţia generală a unui calculator IBM sau compatibil IBM prevede următoarele dispozitive periferice:

Dispozitivele periferice de intrare – tastatura, mouse-ul, scanner-ul,etc. Dispozitive periferice de ieşire: ecran, imprimanta, plotter-ul,etc. Dispozitive periferice de intrare-ieşire: modem, placa de sunet,etc. Microcalculatorul este alcătuit din mai multe subansamble definite după funcţionalitate şi

prezentate în figura următoare:

Page 5: MS-DOS, Pascal

Unitatea centrală

Unitatea centrală sau microprocesorul este alcătuită din unitatea aritmetică si logică sau unitatea de calcul şi unitatea de comandă şi control. Unitatea aritmetică şi logică serveşte la prelucrarea informaţiei efectuând operaţii simple, aritmetice şi logice, asupra unor operanzi din memorie, rezultatele fiind depuse tot în memorie. Unitatea aritmetică şi logică conţine un număr de locaţii de memorie numite regiştrii care memorează temporar informaţiile si o serie de circuite de modificare a conţinutului registrelor. Operaţiile efectuate de UAL – unitatea aritmetică şi logică – sunt:

Operaţii algebrice: “ + ” - adunare, “ - ” - scădere. “ / ” - împărţire, “ * ” – înmulţire. Operaţii logice: “ ~ ” – negaţia, “ ∨ ”disjuncţia, “ ∧ ”conjuncţia. Operaţii de comparare a două valori conform operatorilor relaţionali: “>” – mai mare, “>=” –

mai mare sau egal , “<” – mai mic, “<=” – mai mic sau egal, “=” - egal, “<>” – diferit. Funcţii elementare:

algebrice: exp – exponenţială, log –logaritm,etc. trigonometrice: sin – sinus, cos – cosinus, tan –tangenta, etc.

Rezultatele intermediare sunt păstrate tot în regiştrii unităţii aritmetice şi logice. Unitatea de comandă şi control coordonează funcţiile tuturor unităţilor funcţionale pe baza unor

instrucţiuni sau comenzi care constituie părţi integrale ale informaţiei transmise componentelor calculatorului. Unitatea centrală este realizată din circuite integrate pe scară foarte largă – VLSI( Very Large Scale Integrated). Microprocesoarele diferă între ele prin numărul de instrucţiuni pe care-l pot executa, viteza de execuţie şi cantitatea de memorie pe care o pot folosi. Ele sunt caracterizate de tip, frecvenţa de lucru şi lungimea cuvântului. Tipul microprocesorului – defineşte apartenenţa microprocesorului la o familie de microprocesoare care au caracteristici comune. Aceste caracteristici determină performanţele calculatorului: viteza de lucru, setul de instrucţiuni care sunt înţelese şi executate de procesor. Fiecare tip de microprocesor este caracterizat de un tip de arhitectură internă. În momentul actual piaţa de calculatoare este dominată de familiile de microprocesoare:

- AMD – al firmei Advanced Micro Devices, folosit pe calculatoarele compatibile IBM. - Intel - al firmei IBM. - Motorola – al firmei Aple, folosit pe calculatoarele Macintosh

Frecvenţa de lucru a microprocesorului este frecvenţa de tact a ceasului. Ceasul este cel care stabileşte frecvenţa impulsurilor pentru circuitele electronice ale calculatorului, impulsuri prin care li se

5

Page 6: MS-DOS, Pascal

6

comandă acestor circuite să execute operaţii. Frecvenţa de lucru a microprocesorului se măsoară în MHz(megaherţi), adică în milioane de impulsuri pe secundă. De exemplu dacă un microprocesor are frecventa de lucru de 1500 MHz înseamnă că ceasul său generează 1500 de milioane de impulsuri pe secundă. Cu cât frecvenţa este mai mare cu atât microprocesorul este mai performant, deoarece frecvenţa de lucru a microprocesorului este direct proporţională cu viteza cu care microprocesorul execută instrucţiunile, deci viteza de lucru a calculatorului. Cuvântul microprocesorului reprezintă numărul de biţi întotdeauna multiplu de octet care pot fi prelucraţi la un moment dat de către microprocesor(8,16,32,64 biţi,…). Cu cât cuvântul are mai mulţi biţi cu atât viteza de lucru este mai mare şi microprocesorul este mai performant. Toate aceste elemente determină viteza de lucru a microprocesorului, adică determină cât de repede execută microprocesorul o instrucţiune. Viteza de lucru a microprocesorului se măsoară in milioane de instrucţiuni pe secundă – MIPS – Millions of Instructions per Second. Un calculator performant are o viteză de peste 500 MIPS.

Memoria internă

Memoria serveşte la păstrarea temporară a informaţiilor. Unul dintre elementele care caracterizează memoria internă este capacitatea, care arată dimensiunea acestui depozit de informaţie. Dacă memoria internă are capacitatea mai mare va permite folosirea unui software performant. Dacă memoria unui calculator este insuficientă va scădea viteza de lucru. Mecanismul de gestionare al memoriei interne depinde de sistemul de operare folosit. Altfel spus, un calculator poate să aibă în configuraţie oricâtă memorie internă, dar din aceasta nu va fi folosită decât acea parte care poate fi gestionată de sistemul de operare. Sistemul de operare DOS care a fost unul dintre cele mai răspândite pe calculatoarele compatibile IBM nu poate gestiona decât maxim 16 MB de memorie internă. Actualul sistem de operare Windows XP al Microsoft poate gestiona oricâtă memorie internă, fiind şi un mare consumator de memorie internă. Din această cauză pentru a permite aplicaţiilor să ruleze la o viteză acceptabilă sunt necesari în configuraţie cel puţin 128 de MB de memorie internă. Există două tipuri de memorie internă: RAM şi ROM. Memoria ROM – Read Only Memory – este o memorie care poate fi doar citită dar în care nu se poate scrie. Este o memorie remanentă, adică la scoaterea de sub tensiune a calculatorului, informaţiile scrise în această memorie nu se pierd. Memoria ROM este folosită pentru memorarea unui program de tip firmware, adică inscris de către firma producătoare, destinat lucrului cu calculatorul la punerea sub tensiune a acestuia. Programul stocat în memoria ROM este BIOS-ul – Basic Input-Output System – sistemul de bază pentru intrări şi ieşiri. El controlează modul în care informaţiile sunt apelate sau transferate la monitor, tastatură, unităţi de disc, memoriile RAM şi ROM. Memoria RAM – Random Acces Memory – memorie cu acces aleator – reprezintă o memorie în care se poate scrie şi din care se poate citi. Memoria RAM reprezintă o memorie neremanentă , adică la scoaterea calculatorului de sub tensiune informaţiile inscrise în memorie se pierd. Informaţiile înscrise în memoria RAM pot fi citite aleator, în orice ordine. Memoria RAM stochează informaţia prin impulsuri electrice de tip 1 sau 0 logic(deschis sau închis). Capacitatea memoriei interne se referă la memoria RAM. Aceasta este o caracteristică importantă deoarece de ea depind lungimea maximă a unui program care poate fi încărcat în memoria internă şi executat de către procesor. Programele rulează în memoria internă a calculatorului, adică instrucţiunile şi datele pe care acestea le folosesc sunt încărcate în memoria internă, instrucţiunile sunt executate de procesor, iar rezultatele obţinute în urma executării instrucţiunilor sunt depuse tot în memoria internă. Numărul de biţi din memoria internă este constant. În memoria internă, în aceeaşi zonă de memorie dar la momente diferite, pot fi rulate programe diferite, iar biţii vor avea utilizări diferite. Astfel într-un program ei pot reprezenta date şi în altul pot reprezenta instrucţiuni. Biţii sunt transferaţi în şi afară din memoria calculatorului prin intermediul microprocesorului. Operaţiile se numesc:

Store – depozitarea în memorie a informaţiei. Fetch - extragere din memorie a informaţiei.

Page 7: MS-DOS, Pascal

7

Memoria RAM poate fi utililizată şi ca memorie imediată - cache, memorie tampon pentru imprimantă – print buffer, sau RAM fantomă – Shadow RAM – sporeşte viteza de lucru a microprocesorului copiind informaţiile din ROM în RAM. Atunci când sunt necesare instrucţiuni de intrare-ieşire, ele se citesc din memoria RAM mult mai rapid. Calculatoarele personale prezintă următoarele tipuri de memorie instalată:

Memoria convenţională (de bază) Memoria superioară (UMA) Memoria extinsă (XMS) Memoria expandată (EMS) Memoria RAM video Memoria ROM pentru adaptoare şi memorie RAM cu destinaţie specială Componenta ROM-BIOS de pe placa de bază

Dacă procesorul funcţionează în mod real atunci este accesibil numai 1 MB, iar dacă funcţionează în mod protejat sunt accesibili între 16Mb până la 4 Gb.

Memoria externă

Microcalculatoarele compatibile IBM folosesc ca memorii externe discurile. Pe un disc de plastic – material flexibil, sau aluminiu – material rigid, este depus un strat de substanţă cu proprietăţi feromagnetice. Această substanţă poate fi magnetizată după două direcţii care corespund cifrelor binare 0 şi 1. În acest fel informaţia este memorată şi în afara sesiunii de lucru, adică informaţia memorată nu se pierde la decuplarea calculatorului de la sursa de tensiune. Deoarece discurile sunt suporturi de informaţie capacitatea lor se măsoară în unităţi şi multiplii ai unităţii de măsură a informaţiei, Kocteţi, Mocteţi, Gocteţi,… . Discurile sunt de două tipuri: fixe sau hard disc (HD) şi discuri flexibile - floppy disk (FD). Dispozitivele folosite pentru citirea discurilor se numesc unităţi de discuri. Pentru fiecare tip de disc există un anumit tip de unitate de disc. Există astfel unităţi de disc rigid, fix – Hard Disk Device - HDD şi unităţi de disc flexibil – Floppy Disk Device - FDD. Discurile reprezintă suporţi de informaţie cu acces direct. Pentru a asigura accesul direct la informaţie suprafaţa discului este împărţită în locaţii de memorare care sunt identificate printr-o adresă unică. Suprafaţa discurilor este împărţită în cercuri concentrice numite piste – tracks. Pistele la rândul lor sunt împărţite in arce de cerc egale numite sectoare – sectors. Fiecare pistă coţine acelaşi număr de sectoare. În cadrul fiecărui sector se înregistrează informaţia în format binar, serial, bit după bit, octet după octet. Într-un octet se poate memora un caracter. Pistele au lungimi diferite. Ce de la exterior sunt mai lungi decât cele de la interior, deci şi sectoarele vor avea lungimi diferite cele de la exterior fiind mai lungi decât cele de la interior. Indiferent de lungimea pistei cantitatea de informaţie este aceeaşi. Capacitatea de memorare a unui sector este de 512 Octeţi. Discurile flexibile au două suprafeţe pe care se scrie informaţia. Discurile flexibile au 40 de piste pe o faţă sau 80 de piste pe o faţă, iar informaţia se poate pe scrie pe o faţă sau pe ambele feţe. Hard discul este un pachet de discuri asemănător celor flexibile. Indiferent de tipul discului, fiecare suprafaţă este împărţită în piste şi sectoare. Pistele care au aceeaşi rază formează un cilindru – cylinder. Locaţia de memorare pe disc este sectorul. El se identifică printr-o adresă unică dată de trei elemente:

Numărul cilindrului – corespunde numărului pistei de pe disc. Numărul pistei în cadrul cilindrului – corespunde numărului feţei de disc. Numărul sectorului în cadrul pistei.

Împărţirea suprafeţei discului în piste şi sectoare se face de către utilizator prin operaţia de formatare a discului. Această operaţie se face printr-un program al sistemului de operare care împarte suprafaţa discului în cilindrii, piste şi sectoare, le numerotează pentru a construi sistemul de adrese, verifică prin operaţia de citire-scriere dacă suportul nu este defect. Dacă un disc nu a fost formatat nu poate fi folosit.

Page 8: MS-DOS, Pascal

Fig. 1.2. Structura hard discului

Unitatea de redare a compact discului – CD-ROM Discul compact CD-ROM (Compact Disk - Read Only Memory) este o memorie de tip extern pe suport optic special, de pe care se poate citi, dar pe care nu se poate scrie. Suprafaţa discului conţine mici cavităţi care reflectă lumina unei raze laser către un senzor. Compact discul este înscris cu o unitate specială de inscripţionare a compact discurilor, care foloseşte lumina razei laser pentru înmagazinarea informaţiei binare, la fel ca discul flexibil. Spre deosebire de acesta compact discul:

Are capacitate mult mai mare ≈ 640 Mocteţi. Viteza este mai mică de 2-3 ori decât a hard discului. Pe el nu se poate scrie folosind o unitate CD-ROM obişnuită.

Dispozitive de intrare

Unitatea de intrare –Input Device – reprezintă dispozitivele utilizate pentru a transmite calculatorului informaţii prin operaţia de citire – read. Unitatea de intrare serveşte la convertirea informaţiei furnizate de utilizatori în format binar. Principiul de funcţionare al oricărui dispozitiv de intrare este următorul: preia informaţia introdusă, o împarte în unităţi de informaţie folosind un algoritm propriu, codifică fiecare unitate de informaţie într-o secvenţă de biţi şi transmite aceşti biţi microprocesorului. Dispozitivele de intrare sunt: tastatura, cititorul de cartele, cititorul de bandă perforetă, mouse-ul, scanner-ul, microfonul, creionul optic, etc. Tastatura – keyboard – este un dispozitiv de intrare prin intermediul căruia utilizatorul poate să transmită comenzi calculatorului şi să introducă datele. Comenzile se dau sub forma unui sir de caractere. Fiecare caracter se generează prin acţionarea unei taste. Acţionarea unei taste are ca efect închiderea unui circuit electronic, prin care se generează un cod unic, care reprezintă codul ASCII al caracterului respectiv. Tastatura conţine patru blocuri de taste:

Tastatura alfanumerică – conţine tastele aranjate conform standardului folosit la maşina de scris. Cu aceste taste se pot genera:

codurile caracterelor: cifre :0,1,2,3,4,5,6,7,8,9 litere: a,…,z,A,…Z caractere speciale: $, %, &, @, !, ?,… spaţiu –Space bar

codurile comenzilor : retur de car – Cariage Return salt la linie nouă –Line Feed saltul cursorului cu un anumit număr de coloane – Tab întreruperea execuţiei unui program – Escape – tasta Esc tipărirea ecranului la imprimantă – Print Screen suspendarea temporară a execuţiei unui program – Break/Pause

Tastatura de editare – conţine tastele utilizate pentru editarea unui text. Editarea unui text înseamnă scrierea textului şi corectarea lui. Textul editat este afişat pe ecran. Tot pe ecran este afişată şi o bară orizontală sau verticală numită cursor, care arată poziţia în care va fi scris un caracter în text. Cu aceste taste se pot executa următoarele operaţii:

deplasarea în text - se poate realiza cu ajutorul tastelor : săgeţi care deplasează cursorul o poziţie în direcţia săgeţii.

8

Page 9: MS-DOS, Pascal

9

Page Up şi Page Down – deplasează cursorul o pagină în sus respectiv o pagină în jos. Home şi End – deplasarea la începutul respectiv sfârşitul rândului.

stabirea tipului de inserare - comutarea între modurile inserare/suprascriere se realizează cu ajutorul tastei Insert. În modul de inserare avem: ABCD. Dacă inserăm caracterul E în poziţia cursorului obţinem: ABECD. În modul suprascriere din aceeaşi situţie obţinem: ABED.

stabilirea tipului de ştergere – ştergerea se poate face în două moduri , cu ajutorul tastei Delete se şterge caracterul din poziţia cursorului: ABCD ⇒ ABD, iar prin folosirea tastei Backspace care şterge un caracter la stânga din aceeaşi situaţie obţinem: ABCD ⇒ ACD. Tastatura numerică – este folosită pentru introducerea datelor numerice. Tastatura cuprinde:

tastele numerice de la 0 la 9 tastele pentru operaţiile aritmetice: “+”- adunare, “-” - scădere, “*” - înmulţire, “/” – împărţire, “.”

-punctul zecimal. Tastele funcţionale – se află pe prima linie a tastaturii şi sunt în număr de 12, notate de la F1..F12.

aceste taste au asociate diferite comenzi sau grupuri de comenzi. În general o tastatură conţine 101 taste. Din acestea doar 48 sunt tastele maşinii de scris. Ele ar insuficiente pentru generarea codurilor de caractere şi comenzi. De aceea există două tipuri de taste: tasta caldă – hot key şi tasta rece – cold key. Tasta caldă generează un cod inteligibilpentru calculator, reprezentând un caracter sau o comandă:A, %, 5,Delete, etc.Tasta rece generează şi ea un cod inteligibil. Ea se foloseşte întotdeauna în combinaţie cu o tastă caldă pentru a schimba codul generat de aceasta. Tastele reci sunt:Ctrl, Shift şi Alt. Combinaţia acestor taste se notează:<tasta rece>+<tasta caldă>. De exemplu dacă tastaţi s se va genera codul corespunzător literei s. Dacă tastaţi Shift+s se va genera codul corespunzător literei S. Întâi se apasă tasta rece se ţine apăsată şi apoi se apasă tasta caldă. Tastatura maşinii de scris este formată din taste care au ataşate câte două coduri, astfel încât tastatura poate să fie în două stări: stare de litere mici şi stare de litere mari. Acţionând o tastă se generează codul literei mici iar acţionând combinaţia de taste:Shift+ tastă se generează codul corespunzător literei mari de pe acea tastă. Tastatura numerică este formată şi ea din taste care au ataşate două coduri: un cod numeric şi un cod de operaţie de editare. De exemplu tasta 1 sau End, 7 sau Home, 9 sau Page Up, 3 sau Page Down, etc. Tastaturile care au două stări pot fi comutate între cele două stări cu ajutorul unei taste comutator. Tastele comutator sunt:

Tasta Caps Lock – comută tastatura maşinii de scris între starea în care se generează codul literelor mari şi starea în care se generază codul corespunzător literelor mici. Starea tastei comutator este semnalizată prin LED-ul Caps Lock. Dacă LED-ul este stins înseamnă că tastatura este dezactivată. Prin apăsarea tastei a se generează codul corespunzător literei a mic, iar prin combinaţia Shift +a se generează codul corespunzător literei A mare. Dacă LED-ul este aprins înseamnă că tastatura este activată. Prin apăsarea tastei A se generează codul corespunzător literei A mare, iar prin combinaţia Shift +a se generează codul corespunzător literei a mic.

Tasta Num Lock – comută tastatura numerică între starea de tastatură numerică şi starea de tastatură de editare. Starea tastei comutator Num Lock este semnalitată de LED-ul Num Lock. Dacă LED-ul este stins înseamnă că tastatura este dezactivată. Prin apăsarea tastei 1 se generează codul corespunzător comenzii End. Dacă LED-ul este aprins înseamnă că tastatura este activată. Prin apăsarea tastei 1 se generează codul corespunzător cifrei 1.

Tasta Insert – permite comutarea între modul de lucru inserare – insert şi modul de lucru suprascriere – overwrite. Dacă tasta este acţionată se face corectura cu suprascriere, iar dacă nu este acţionată corectura se face cu inserare.

Tastaturile se deosebesc in funcţie de numărul de taste 101 sau 102 taste. În funcţie de modul de dispunere al tastelor avem două tipuri de tastaturi standard: anglo-saxonă cu tastele depuse (Q,W,E,R,…) şi franceză cu tastele depuse (A,Z,E,R). Tastaturile sunt specializate pe ţări, fiecare tastatură conţinând semnele specifice ţării. Calculatorul identifică fiecare tastatură printr-un cod intern. Datorită posibilităţilor interne de configurare, în cadrul aplicaţiilor folosite pentru prelucrarea textelor, pot fi generate cu ajutorul tastaturii şi caracterele româneşti:ă, â, î, ş, ţ, Ă, Â, Î, Ş, Ţ.

Mouse-ul este un dispozitiv periferic de intrare care poate fi folosit în anumite programe pentru a selecta anumite obiecte de pe ecran în vederea executării unor operaţii. El se utilizează doar în acele programe care realizează pe ecran interfeţe utilizator prin intermediul unor tehnici avansate cum ar fi:

Page 10: MS-DOS, Pascal

10

tehnica ferestrelor şi a casetelor dr dialog, tehnica meniurilor, tehnica obiectelor, etc. Mouse-ul este un dispozitiv pentru care ecranul monitorului devine o masă virtuală de lucru. Pe această masă virtuală, poziţia mouse-ului este marcată printr-un semn grafic numit cursor de mouse. Acest cursor este deferit de cursorul care arată poziţia în care va fi scris un caracter pe ecran. Programul care permite folosirea mouse-ului va crea pe ecran diferite obiecte care vor putea fi manipulate atât prin comenzi date de la tastatură cât ţi prin comenzi date cu mouse-ul. Mouse-ul are mai multe butoane. El se deplasează pe masa reală numită pad. Această operaţie are ca efect deplasarea cursorului de mouse pe ecran. Cursorul de mouse urmăreşte pe ecran deplasarea mouse-ului pe masa reală. Cu ajutorul mouse-ului se pot executa următoarele operaţii:

operaţia de indicare – point – pentru care cursorul de mouse este deplasat pe ecran pentru a indica un anumit obiect, deplasarea pe ecran se face prin deplasarea mouse-ului pe pad.

operaţia clic – click – prin care se acţionează (apasă) scurt un buton al mouse-ului. operaţia clic dublu – double click – prin care se acţionează (apasă) scurt de două ori un

buton al mouse-ului. operaţia de glisare sau tragere – drag – prin care se deplasează mouse-ul pe masa reală cu

un buton acţionat. Există mai multe tipuri de mouse-uri clasificate după:

Număr de butoane: 2 butoane, 3 butoane. Tipul portului prin care se conectează:serial şi paralel. Compatibilitate: mouse-urile compatibile Microsoft sunt compatibile Genius, Logitech, etc.

Scanner-ul este un dispozitiv de intrare prin care pot fi citite imagini grafice (fotografii, desene pe hârtie). Imaginea pe care o citeşte scanner-ul este o imagine formată din puncte. Fiecare punct este definit printr-un cod de culoare obţinându-se versiunea digitală a imaginii. După ce a fost citită cu scanner-ul, imginea poate fi prelucrată cu ajutorul calculatorului: mărită, micşorată, rotită, colorată, suprapusă cu alte imagini, etc. scanner-ul se caracterizează prin următoarele elemente:

Rezoluţia – reprezintă numărul de puncte pe inci pe care le poate citi scanner-ul. Cu cât rezoluţia este mai mare cu atât imaginea scanată va fi mai apropiată de cea reală. Rezoluţia medie este de 300 – 400 dpi ( dots per inch – puncte pe inci).

Numărul de culori – reprezintă setul de culori codificate de scanner. Cu cât numărul de culori este mai mare cu atât imaginea scanată este mai apropiată de cea reală.

Viteza de scanare – reprezintă viteza cu care un scanner citeşte şi prelucrează o imagine.

Dispozitive de ieşire

Unitatea de ieşire – Output Device – serveşte la transmiterea rezultatelor prelucrărilor, realizând conversia reprezentării informaţiei de la forma binară utilizată de calculator la o formă textuală sau grafică accesibilă omului. Aceste dispozitive comunică utilizatorului rezultatele operaţiilor comandate şi informaţii despre starea sistemului, prin operaţia de scriere – write. Din această categorie fac parte: monitorul, imprimanta, plotter-ul, perforatorul de hârtie, difuzorul, etc. Aceste dispozitive primesc o secvenţă de biţi de la procesor şi o decodifică astfel încât să poată fi înţeleasă de om sau alt mecanism. Secvenţele de biţi pot să conţină texte, liste cu tabele numerice, desene, muzică, comenzi care controlează un dispozitiv, etc.

Ecranul – display - este un suport de ieşire pe care calculatorul scrie rezultatele prelucrărilor, mesajele şi informaţiile despre starea sistemului. El face parte dintr-un dispozitiv numit monitor, care pe lângă ecran, mai conţine şi circuitele necesare realizării imaginii pe ecran. Monitorul este legat la placa video – adaptorul video – care se găseşte în interiorul calculatorului şi care prelucrează semnalele de la procesor, pentru a le transforma în imagini grafice. Imaginile de pe ecran sunt compuse din trei culori: roşu, verde şi albastru. Ecranul reprezintă de fapt o suprafaţă de puncte foarte mici, colorate numite pixeli. Fiecare pixel la rândul său este format din trei puncte de culoare şi intensitate diferite, corespunzătoare celor trei culori. Dacă toate cele trei puncte au intensitate maximă pixelul are culoarea albă, iar dacă toate cele trei au intensitate minimă pixelul are culoarea neagră. Monitoarele sunt caracterizate de:

Page 11: MS-DOS, Pascal

11

Diagonală – cele mai răspândite monitoare au diagonala de 14 sau 15 inci,care este suficientă pentru activităţile obişnuite. Diagonalele de 17 sau 21 de inci se folosesc în aplicaţiile de grafică profesională sau în proiectare.

Radiaţia monitorului – reprezintă reprezintă efectul produs asupra omului de radiaţia generată prin bombardarea ecranului cu electroni. Se recomandă ecrane de protecţie sau monitoarele low radiation – cu radiaţie redusă.

Tipul semnalului folosit - cu semnale analogice, în care semnalele pentru transmiterea informaţiei pot lua orice valori între o valoare minimă şi o valoare maximă sau cu semnale digitale – semnalele codifică informaţia în binar si pot avea doar două valori.

Rezoluţie –reprezintă numărul de pixeli de pe ecran exprimat în număr de pixeli pe linie înmulţit cu număr de pixeli pe coloană: n x m. De exemplu 800 x 600 pixeli înseamnă 800 de pixeli pe linie şi 600 de pixeli pe coloană. Cu cât rezoluţia este mai mare cu atât imaginea este mai clară.

Definiţie –reprezintă distanţa dintre două puncte consecutive pe ecran (de exemplu 0,28 mm). Cu cât definiţia este mai mică cu atât imaginea este mai clară.

Numărul de culori – reprezintă numărul de culori folosite pentru realizarea imaginii. Se pot folosi de la 256 de culori până la 16777216 culori. Fiecare culoare este codificată în binar. Fiecărui pixel I se atribuie un cod de culoare. Cu cât se folosesc mai multe culori, cu atât este nevoie de mai mulţi biţi pentru construirea codului de culoare.

Viteza de afişare – depinde de viteza cu care se pot prelucra informaţiile de către placa video şi memoria folosită pentru stocarea imaginii.

Imprimanta – este un dispozitiv de ieşire prin care calculatorul comunică rezultatele obţinute în urma prelucrării, prin intermediul unui suport de informaţie: hârtia. Hârtia de imprimantă este un suport secvenţial. Este parcursă într-un singur sens fără posibilitatea revenirii pentru rescrierea unor informaţii. Imprimanta posedă un mecanism pentru tipărirea caracterelor, un mecanism pentru antrenarea hârtiei, un panou cu butoane şi LED-uri şi două cabluri:unul de alimentare si unul de transmisie de informaţii. Imprimantele se caracterizează prin următoarele:

Rezoluţie – reprezintă numărul de puncte afişate pe inci. Există rezoluţie verticală şi rezoluţie orizontală. Nu este obligatoriu ca cele două valori să fie identice. Rezoluţia se măsoară în dpi.

Viteza – reprezintă viteza de scriere a imprimantei şi se măsoară în cps- caractere pe secundă la imprimantele lente şi pps – pagin pe secundă la imprimantele rapide.

Dimensiunea maximă a hârtiei: A3(420x297), A4(210x297), A5(148 x 210), B5(182 x 257). Memoria proprie – reprezintă memoria imprimantei în care informaţiile ce urmează a fi

tipărite se memorează. Deoarece viteza procesorului este mult mai mare decât a imprimantei, informaţiile procesate se transmit imprimantei unde vor fi memorate până la imprimarea lor, evitând blocarea magistralei de date.

Imprimantele sunt fabricate de firme diferite, într-o gamă largă, utilizând diferite principii constructive. În funcţie de modul în care acţionează şi de modul de construcţie imprimantele sunt de mai multe tipuri:

Imprimante matriceale – Dot Matrix Printer – aceste imprimante au un cap de scriere alcătuit din ace foarte subţiri. Acele apasă o bandă tuşată – ribbon – generând o matrice de puncte. Capul de imprimare poate conţine 9, 18 sau 24 de ace. Cu cât numărul de ace creşte cu atât imprimanta are o rezoluţie mai bună. Rezoluţia este de aproximativ 180 – 360 dpi, iar viteza este de 150 de cps la cele lente şi ajunge la 800 de cps la cele rapide. Au avantajul că sunt ieftine şi dezavantajul că sunt zgomotoase.

Imprimante cu jet de cerneală –Ink Jet Printer – aceste imprimante scriu pe hârtie aruncând un jet de cerneală cu o anumită intensitate, în funcţie de informaţia pe care trebuie să o scrie.se pot utiliza diferite culori de cerneală realizând imagini color. Sunt printre cele mai rapide având o viteză între 3-16 ppm şi o rezoluţie 180 – 360 dpi. Nu sunt cu mult mai scumpe decât cele matriceale dar au avantajul că sunt silenţioase şi au o calitate bună a tipăririi.

Imprimante laser – Laser Printer – se bazează pe principiul copiatoarelor xerox. Razele laser polarizează electrostatic un cilindru care astfel atrage o substanţă numită tonner. Aceasta se încarcă pe cilindru în funcţie de informaţia ce trebuie tipărită. Tonner-ul de pe cilindru este depus pe foaia de hârtie. Acest tip de imprimare asigură o calitate înaltă a tipăririi cu o rezoluţie între 300-1000 dpi şi o viteză mărită între 4-18 ppm. Ele dispun de o memorie proprie de aproximativ 512 Kocteţi, care este suficientă

Page 12: MS-DOS, Pascal

12

pentru tipărirea unor pagini complexe. Au avantajul că sunt uşor de folosit şi imprimarea este de bună calitate. Dezavantajul este preţul mare al unui astfel de echipament.

Imprimante termice – aceste imprimante tipăresc informaţia pe baza fixării termice a vaporilor de cerneală pe o hârtie specială – principiul fax-ului. Sunt mai lente decât celecu jet de cerneală şi lase având o viteză de 2 – 8 ppm. Traducerea semnalelor de tipărire, pe care le emite calculatorul în semnale de comenzi de tipărire pe care le înţelege imprimanta se realizează cu un program numit driver de imprimantă. Pentru fiecare imprimantă există un driver special, iar pentru ca operaţia de tipărire să fie posibilă driver-ul trebuie instalat. Operaţia se numeşte instalarea imprimantei. Plotter-ul este un dispozitiv de ieşire prin care calculatorul desenează pe un suport (hârtie) imagini de mare precizie: hărţi, desene tehnice.

El se deosebeşte în principal de o imprimantă prin următoarele caracteristici: Hârtia poate fi parcursă în ambele sensuri, adică se poate reveni pe un desen. Acceptă formate mari de hârtie. Precizia desenelor executate este mare, având în general o rezoluţie între 300 – 800

dpi. Plotter-ul este format dintr-o masă pentru desenare şi un braţ cu care se desenează. Desenul se

poate realiza cu un grup de tocuri, cu jet de cerneală, electrostatic, cu laser.

Dispozitive de intrare-ieşire

Dispozitive de intrare-ieşire – Input-Output Device – sunt dispozitive utilizate pentru a realiza comunicaţia în ambele sensuriprin operaţia de citire – read şi operaţia de scriere – write. Din această categorie fac parte : interfaţa de teletransmisie, modem-ul, placa multimedia.

Modem-ul – Mo – modulare, Dem – demodulare – este un echipament necesar în transmisia datelor la distanţă prin intermediul unei linii de comunicaţie, ca de exemplu linia telefonică. El asigură la emisie modularea semnalului iar la recepţie demodularea lui. Aceasta operaţie este necesară deoarece semnalul din interiorul calculatorului este digital iar transmisia pe linia telefonică este analogică. Transformarea semnalului digital în semnal analogic se numeşte modulare, iar transformarea inversă a semnalului analogic în semnal digital se numeşte demodulare. Modemul se găseşte sub forma unei placi în interiorul calculatorului sau ca dispozitiv extern.

Placa multimedia - reprezintă un dispozitiv de intrare-ieşire care asigură conversia informaţiei din binar în alte formate utilizate de alte echipamente şi invers, conversia în binar a informaţiilor preluate de la alte echipamente: imaginea video a televizorului sau videocasetofonului, sunete reale preluate de la microfon sau casetofon şi redate prin difuzare sau pe bandă audio, cât şi informaţii MIDI ( Musical Instument Digital Interface) generate de sintetizatoare şi claviaturi electronice.

SISTEMUL DE OPERARE

Sistemul de operare - S. O. – reprezintă o colecţie de rutine ce organizează un procesor şi periferia acestuia într-o entitate de lucru capabilă să dezvolte şi să execute aplicaţii. Sistemele de oprerare reprezintă o clasă de programe care guvernează resursele hard şi soft ale calculatorului, procesează comenzile utilizatorului şi controlează execuţia programelor.

Prin rutină se înţelege un program de dimensiuni mici, specializat, scris de firma producătoare a sistemului de operare, care asigură efectuarea anumitor comeni la nivelul unei componente a calculatorului.

Page 13: MS-DOS, Pascal

13

Funcţiile sistemului de operare. Tipuri de sisteme de operare.

Funcţiile sistemului de operare sunt următoarele: Manager – sistemul de operare determină cine va utiliza dispozitivele periferice – DP. De

asemenea supervizează utilizarea memoriei şi controlează priorităţile diverselor evenimente. La apariţia unei erori sistemul de operare semnalează acest fapt utilizatorului.

Procesor de comenzi - sistemul de operare primeşte comenzile utilizatorului, verifică acurateţea lor şi iniţiază execuţia comenzilor prin lansarea în execuţie a programelor corespunzătoare dim memorie sau de pe disc.

Controlor - sistemul de operare trebuie să aibă în permanenţă controlul resurselor sistemului. Dacă un program eşuează în urma unei erori , controlul este cedat sistemului de operare care determină şi raportează tipul erorii.

Cele mai cunoscute sisteme de operare folosite pe calculatoarele personale sunt sistemele de tip DOS (Disk Operating System). Alături de acestea există şi alte sistemul de operare precum Unix, Lynux, Windows xx, OS/2, etc. La rândul lor sistemele de operare DOS sunt de mai multe feluri în funcţie de firma constructoare şi anume:

PC-DOS – aparţinând firmei I.B.M.; MS-DOS – aparţinând firmei Microsoft; DR-DOS – aparţinând firmei Digital Research;

Cel mai răspândit sistem de operare este MS-DOS. Sistemul de operare MS-DOS în comparaţie cu alte sisteme de operare CP/M, OS/2, UNIX, XENIX,VMS, RSX, WINDOWS are dimensiune medie şi complexitate moderată, suportă un singur program în execuţie la un moment dat, un singur utilizator, lucrează cu memoria fizică şi oferă programelor o interfaţă logică. Deşi iniţial a fost dezvoltat pentru calculatoarele compatibile IBM-PC, astăzi este utilizat pe o gamă largă de calculatoare denumite “compatibile IBM-PC” precum şi pe seria IBM PS/2. În fiecare caz calculatorul este controlat pe două nivele. Nivelul de jos este reprezentat de ROM-BIOS, produs iniţial de IBM, iar deasupra se află MS-DOS.

ROM-BIOS (Basic Input-Output Sistem) reprezintă un sistem de programe ce se află înscris în memoria ROM şi care este furnizat de către firma producătoare a calculatorului. Este folosit atât de către MS-DOS cât şi de către orice alt sistem de operare. Scopul principal al ROM-BIOS - ului este de a iniţializa sistemul şi de a lansa programul de încărcare al sistemului de operare.

ROM - BIOS-ul conţine următoarele componente: drivere fizice pentru diverse componente hardware (tastatură, disc, imprimantă); programul de pornire la punerea sub tensiune a calculatorului (POST – Power On Self Test

Program) programul încărcător

La pornirea calculatorului se execută următoarea secvenţă: programul de pornire POST - detectează perifericele instalate, configuraţia hardware şi

verifică buna funcţionare a acestora; iniţializări – tabela vectorilor de întrerupere şi diverse componente hardware; programul încărcător încearcă să citească primul sector de pe dischetă sau disc. Dacă

încercarea de citire de pe dischetă eşuează se execută aceleaşi operaţii asupra discului fix. Programul nu trebuie să cunoască prea multe despre disc. Strategia de control presupune că pe primul sector de pe discul cu sistemul de operare se află un alt program încărcător al sistemului de operare.

Există două tipuri de pornire a calculatorului: reset-ul la rece – este iniţiat când se porneşte calculatorul sau când se apasă butonul RESET. reset-ul la cald la acţionarea tastelor Ctrl+Alt+Del, când se porneşte doar programul

încărcător.

Page 14: MS-DOS, Pascal

14

PĂRŢILE COMPONENTE ALE SISTEMULUI DE OPERARE MS-DOS

MS-DOS oferă utilizatorului o interfaţă pentru comenzi, un sistem pentru managementul fişierelor şi o interfaţă a programului de aplicaţie. În scrierea programelor de aplicaţie, programatorul poate să aleagă între interfaţarea cu MS-DOS, interfaţarea cu nivelul ROM-BIOS sau accesarea directă a suportului hardware. Fiecare metodă are avantajele şi dezavantajele ei din punct de vedere al vitezei de lucru a programului de aplicaţie şi al compatibilităţii. Sistemul de operare MS-DOS este modularizat şi are cinci părţi componente:

Programul încărcător – BOOT RECORD – ocupă primul sectorul al discului Extensia BIOS – fişierul IO.SYS Nucleul MS-DOS – fişierul MSDOS.SYS Interfaţa utilizator- fişierul COMMAND.COM asigură interfaţarea sistemului de operare

cu utilizatorul prin verificare şi lansarea în execuţie a programelor corespunzătoare comenzilor date de utilizator.

Programe utilitare – comenzile externe.

Programul încărcător BOOT RECORD

Reprezintă un mic program, încărcat în memorie şi lansat în execuţie de către încărcătorul din ROM-BIOS. Acest al doilea program încărcător este capabil să citească şi să încarce în memorie primul fişier de pe disc, fişier care întotdeauna trebuie să fie IO.SYS. După încărcarea IO.SYS controlul este cedat unui al treilea program încărcător numit SYSINIT, aflat în IO.SYS, mult mai complex decât primele două. Procesul de încărcare al MS-DOS în memoria calculatorului poate fi gândit ca rezultatul acţiunii a trei programe încărcător. MS-DOS conţine un al IV-lea încărcător specializat în încărcarea programelor de aplicaţie de pe disc şi lansarea lor în execuţie.

Extensia BIOS – Fişierul IO.SYS

Fişierul IO.SYS conţine : noi drivere pentru componentele care completează sau înlocuiesc driverele existente în ROM-

BIOS. Rutine de iniţializare pentru noile drivere. Aceste rutine de iniţializare ajustează tabela

vectorilor de întrerupere corespunzător noilor drivere. Tabela vectorilor de întrerupere se află în zona de început a memoriei şi conţine adresa de start pentru fiecare driver.

Încărcătorul SYSINIT. Fişierele IO.SYS şi MSDOS.SYS au atributele de fişiere ascunse - hidden şi sistem – system, deci

nu sunt vizibile cu comanda DIR.

Nucleul MS-DOS

Nucleul MS-DOS se interpune între ROM-BIOS şi programul de aplicaţie, oferind astfel o interfaţă logică programului de aplicaţie izolându-l de hardware. Nucleul MS-DOS are patru roluri:

controler al proceselor – controlul proceselor constă în managementul execuţiei programelor şi cuprinde încărcarea programelor, iniţializarea execuţiei programelor şi revenirea în sistemul de operare la terminarea programului;

managementul memoriei – cuprinde alocarea memoriei pentru programele de aplicaţie. MS-DOS utilizează alocarea memoriei fizice, deci programele de aplicaţie lucrează cu memorie fizică şi nu cu cea virtuală.

Interfaţă a programelor de aplicaţie - desigur că programul de aplicaţie lucrează cu viteză mare când lucrează direct cu ROM-BIOS-ul sau cu hardware-ul. În aceste cazuri portabilitatea programului devine scăzută iar programatorul trebuie să aibă în vedere diferitele incompatibilităţi la nivelul ROM-BIOS sau hardware existente la calculatoarele furnizate de

Page 15: MS-DOS, Pascal

15

diferiţi producători. Încărcarea nucleului din fişierul MSDOS.SYS în memoria calculatorului este realizată de programul încărcător SYSINIT. După aceasta, SYSINIT transferă controlul rutinei de iniţializare a nucleului. Sunt completate noile întreruperi în tabela vectorilor de întrerupere, sunt iniţializate driverele instalate şi sunt construite buffer-ele necesare. După rutină controlul revine la SYSINIT care citeşte fişierul CONFIG.SYS (dacă există) şi instalează noile drivere specificate în acesta. MS-DOS suportă două tipuri de drivere fizice: rezidente şi nerezidente sau instabile. Driverele rezidente sunt localizate în fişierul IO.SYS şi în general nu sunt alterabile de utilizator. Utilizatorul poate înlocui driverele rezidente cu cele proprii. Driverele instabile sunt în mod normal situate în fişiere cu extensia SYS. După instalarea driverelor sunt închise toate fişierele şi este încărcat şi lansat în execuţie COMMAND.COM . Dacă pe disc există fişierul AUTOEXEC.BAT, atunci el este executat automat.

Sistem de control al fişierelor – partea de management a fişierelor este cea mai consistentă . Ea asigură citirea şi scrierea fişierelor. Dacă nu este necesar accesul la un sector particular de pe disc, programele de aplicaţie trebuie să realizeze citirea şi scrierea fişierelor prin intermediul nucleului MS-DOS.

Interfaţa utilizator – COMMAND.COM

Interfaţa utilizator defineşte ceea ce se vede pe ecranul calculatorului atunci când se utilizează MS-DOS. COMMAND.COM este lansat în execuţie de către încărcătorul SYSINIT prin funcţia EXEC a MS-DOS. Command.com afişează promptul MS-DOS şi aşteaptă introducerea unei comenzi de către utilizator. Când o comandă a fost introdusă , ea este interpretată şi apoi executată. Command.com poate fi rescris după necesităţi de către utilizator pentru a oferi o altă interfaţă. Fişierul poate fi situat oriunde pe disc sau poate fi redenumit. Noul nume şi calea unde se află pe disc trebuie specificate în CONFIG.SYS cu ajutorul comenzii SHELL.

Command.com are trei părţi: Partea rezidentă – se află permanent în memorie, în zona de început a memoriei, deasupra

tabelei vectorilor de întrerupere. Ea conţine codul necesar pentru procesarea comenzilor CTRL+C şi Ctrl+Break, codul pentru tratarea erorilor şi codul pentru încărcarea părţii temporare atunci când este necesar;

Partea temporară – este cea care recepţionează comenzi de la tastatură şi care conţine codul comenzilor interne. Ea este încărcată imediat sub limita de 640 Kb a memoriei RAM. Dacă programul de aplicaţie este mare, el poate să elimine partea temporară a command.com din memorie. În acest caz la terminarea execuţiei programului, partea rezidentă va reîncărca partea temporară.

Partea de iniţializare – este încărcată în memorie numai în timpul procesului de iniţializare a sistemul de operare. Ea conţine codul pentru execuţia lui AUTOEXEC.BAT. Acest fişier realizează ultima parte a iniţializării MS-DOS. Partea de iniţializare este eliminată din memorie imediat după ce autoexec.bat este apelat.

Command.com acceptă trei tipuri de comenzi: Comenzile interne (intrinseci) - cele ale căror cod este conţinut în command.com Comenzile externe – cele ale căror cod se află pe disc sub forma unor fişiere cu extensia EXE

sau COM. Toate programele de aplicaţie sunt încărcate şi executate sub formă de comenzi externe. Atât comenzile interne cât şi cele externe încarcă programul specificat în zona de memorie TPA (Transient Program Area ) şi apoi transferă controlul primei instrucţiuni din program. Odată ce execuţia programului se termină, codul aflat în TPA nu mai este valid. Următoarele comenzi încarcă în TPA programe noi pentru execuţie.

Comenzile de tip batch – se referă la fişierele de tip text, cu extensia BAT care conţin mai multe comenzi. Aceste fişiere sunt interpretate utilizând un interpretor din partea temporară a command.com. Interpretorul citeşte fiecare linie din fişier şi apoi execută comanda liniei citite.

Când o comandă este introdusă de către utilizator, command.com încearcă să găsească o comandă internă cu numele respectiv. Dacă intenţia de detecţie internă eşuează, atunci se încearcă detectarea în calea curentă a unui fişier cu extensia EXE, BAT sau COM. Dacă şi această detecţie eşuează

Page 16: MS-DOS, Pascal

16

command.com afişează mesajul “Bad Command or File Name”. Dacă un fişier cu numele respectiv şi extensia EXE sau COM este detectat command.com utilizează funcţia EXEC a MS-DOS pentru a-l încărca şi a-i transfera controlul. Când execuţia programului se termină, partea temporară a command.com este încărcată , iar controlul revine sistemului de operare. Spre deosebire de sistemele de operare mari, MS-DOS pierde aproape tot controlul pe durata execuţiei unui program, deci programul are la dispoziţie toate resursele calculatorului. Singurele componente care rămân în control pe parcursul execuţiei unui program de aplicaţie sunt rutina de ceas (care întrerupe periodic programul aflat în execuţie pentru actualizarea datei şi orei) şi sistemul de întreruperi al tastaturii (care permite utilizatorului să acţioneze combinaţia de taste Ctrl+Break sau Ctrl+C pentru a opri execuţia unui program şi a reveni în sistemul de operare ). FIŞIERE ŞI DIRECTOARE

Fişierul este considerat elementul fundamental de memorare a informaţiei pe suport magnetic. Fiecare fişier are o denumire, un conţinut, trei caracteristici şi eventual câteva atribute.

Denumirea – filename – unui fişier este formată din trei părţi: numele propriu-zis – name , caracterul punct “.” şi extensie – extension.

În denumirea unui fişier pot apare: Litere : a – z Cifre : 0 – 9 Caractere speciale : ~,@,#,$,%,^,(,),<,>,+,=,- ;

În denumirea fişierului se pot folosi şi specificatorii multiplii: *,? * - înlocuieşte oricâte caractere: ? – înlocuieşte un singur caracter;

Numele fişierului poate fi format din 1-8 caractere. Extensiile pot fi formate din 0-3 caractere, ceea ce înseamnă că ele pot să şi lipsească, caz în care lipseşte şi caracterul punct. Numele fişierului nu poate fi:

AUX, CON – reprezintă identificatori rezervaţi pentru consolă; NUL, PRN - reprezintă identificatori rezervaţi pentru imprimantă; COM1, COM2,… - reprezintă identificatori rezervaţi pentru porturile seriale; LPT1, LPT2,… - reprezintă identificatori rezervaţi pentru porturile paralele;

Numele fişierului trebuie să fie sugestiv. Folosirea extensiilor este lăsată la libera alegerea utilizatorului şi se obişnuieşte folosirea unor extensii sugestive (care să sugereze natura şi conţinutul fişierului respectiv). Sunt totuşi câteva extensii pe care sistemul le tratează în mod special şi care nu trebuie folosite în alte contexte decât cele indicate mai jos:

EXE,COM – reprezintă extensii folosite pentru fişierele ce conţin programe în format direct executabil. Lansarea în execuţie a unui astfel de fişier se face prin tastarea numelui respectivului fişier, urmată de apăsarea tastei Enter.

BAT - reprezintă extensie folosită pentru fişierele de comenzi indirecte – BATCH. Aceste fişiere conţin un ansamblu de comenzi ale sistemului de operare sau comenzi de lansare în execuţie a unor programe executabile.

SYS - reprezintă extensie folosită pentru fişierele care conţin informaţii despre sistem sau un driver pentru o componentă a sistemului de calcul.

BIN - reprezintă extensie folosită pentru fişierele binare care conţin de regulă un cod executabil.

LIB - reprezintă extensie folosită pentru fişierele care conţin o bibliotecă. PAS - reprezintă extensie folosită pentru fişierele sursă de program în limbajul Pascal. C - reprezintă extensie folosită pentru fişierele sursă de program în limbajul C. CPP - reprezintă extensie folosită pentru fişierele sursă de program în limbajul C++. BAS - reprezintă extensie folosită pentru fişierele sursă de program în limbajul Basic. ASM - reprezintă extensie folosită pentru fişierele sursă de program în limbaj de asamblare. BAK - reprezintă extensie folosită pentru fişierele care conţin versiunea anterioară a unui alt

fişier.

Page 17: MS-DOS, Pascal

Conţinutul unui fişier poate fi din punct de vedere calitativ, foarte divers: texte obişnuite sau codificate, grafice, date numerice şi alfanumerice, programe sursă scrise într-un anumit limbaj, comenzi, etc. Din punct de vedere cantitativ conţinutul unui fişier poate fi considerat o însiruire de octeţi (coduri ASCII – American Standard Code for Information Interchange).

Caracteristicile unui fişier sunt: lungimea fişierului adică numărul de coduri din care este alcătuit fişierul, data şi ora la care a fost creat fişierul respectiv.

Atributele unui fişier pot fi: A – Archive – reprezintă o anumită formă de arhivare folosită de unele comenzi ale sistemului

de operare. S – System – reprezintă fişier al sistemului de operare. R – Read Only – reprezintă fişier accesibil doar la citire. H – Hidden – reprezintă fişier “ascuns” al cărui nume nu apare la comenzile de vizualizare a

conţinutului unui director. Revenind la organizarea informaţiei reamintim că la formatare orice disc este dotat cu un director

rădăcină – Root Directory. Pe disc informaţia este stocată în fişiere, iar fişierele sunt grupate în directoare. Directoarele dacă există sunt subdirectoare ale directorului rădăcină. Fiecare director are/poate avea la rândul lui în subordine alte directoare numite subdirectoare. În final, organizarea în directoare a discului ia o formă arborescentă. Orice director are o denumire care respectă aceleaşi reguli de formare ca denumirea fişierului. Singura excepţie o constituie directorul rădăcină, notat “ \ ”.

Prin comanda externă TREE se poate afişa arborele directoarelor aflate pe discul din drive-ul curent. În cadrul acestui arbore, directorul ce conţine alte directoare se numeşte director tată pentru directoarele conţinute, iar oricare dintre directoarele conţinute se numeşte director fiu faţă de directorul ce le conţine. Oricare din aceste directoare poate conţine fişiere. Dacă conţine fişiere accesul la un fişier se face prin indicarea unităţii de disc şi a drumului parcurs arborele de directori de la rădăcină până la directorul în care se găseşte fişierul. În specificarea acestui drum, diferitele denumiri ale ale nodurilor (directoarele de pe traseu ) sunt precedate (pentru separare de caracterul back-slash “ \ ”.

Structura după care se memorează informaţia pe discul magnetic se numeşte structură de directori. O anumită rută prin structura de directori se numeşte cale - path. În general o cale constă într-o secvenţă de directoare separate prin back-slash. Dacă respectiva cale începe cu un caracter “\”, sistemul de operare înţelege să înceapă parcurgerea ei chiar din directorul rădăcină. Dacă însă începe printr-o denumire, sistemul de operare va începe parcurgerea ei din directorul curent.

De exemplu fie următoarea structură arborescentă:

17

Se observă că directorul BURSIERI este director fiu al directorului STUDENT, care la rândul său

este director fiu al directorului rădăcină “ \ ”. directorul STUDENT este director tată pentru directoarele BURSIERI, RĂI.

STUDENT

BURSIERIRĂI

ELEV

Calea spre fişierele conţinute în directorul RĂI specificată din rădăcină este \STUDENT\RĂI\ . Din punct de vedere al sistemului de operare un specificator complet de fişier arată astfel:

[litera drive-ului:][cale\]denumire_fişier De exemplu: C:\STUDENT\BURSIERI\EXEMPLU.PAS Sau

[u:][cale]nume[.ext] unde :

[litera drive-ului] sau [u:] reprezintă identificatorul respectivei unităţi de disc şi poate fi orice literă de la A-Z.

[cale ] sau [cale\] reprezintă traseul parcurs pentru găsirea fişierului.

Page 18: MS-DOS, Pascal

18

denumire_fişier reprezintă numele fişierului plus caracterul punct plus extensia fişierului.

nume reprezintă numele fişierului [.ext] reprezintă caracterul punct şi extensia fisierului respectiv.

Parantezele drepte semnifică faptul că ceea ce este cuprins între ele este opţional.

COMENZI INTERNE

Comenzi referitoare la directoare

Comenzile interne sunt memorate în fişierele sistemului de operare, fapt pentru care sunt

accesibile odată cu acesta. Pentru fiecare comandă vom prezenta sintaxa şi efectul comenzii.

Vizualizarea conţinutului unui director

Vizualizarea conţinutului unui director se realizează cu ajutorul comenzii DIR, care afişează lista fişierelor şi subdirectoarelor specifice unui director incluzând extensiile, dimensiunea în octeţi, data şi ora ultimei modificări, numărul total de fişiere listate şi dimensiunea lor totală, spaţiul liber rămas pe disc, eticheta de volum şi seria discului.

Sintaxă: DIR[d:][cale][nume_fisier][/p][/w][/a[[:]attribute]] [/o[[:]ord_sort]][/s][/b][/l][/c[h]]

Sau sintaxa simplificată: DIR [d:][cale][nume_fisier[.ext]][/p][/w] Parametrii:

[d:][cale] – precizează unde se află directorul al cărui conţinut va fi listat. nume_ fisier – precizează un fişier sau un grup de fişiere(folosind “*” şi “?”) care vor fi listate

din directorul precizat în parametrul cale. Comutatori :

[/p] – execută o pauză în afişare după umplerea unui ecran. Comanda are efect doar în cazul în care numărul de fişiere şi directoare este mai mare de 21, după care apare mesajul “Press any key to continue” adică apăsaţi orice tastă pentru continuare.

[/w] – afişarea fişierelor se face condensat pe cinci coloane, listându-se doar numele fişierelor, directoarele fiind afişate între paranteze drepte.

/a[[:] attribute] – afişează doar fişierele şi directoarele care au poziţionate atributele specificate prin parametrul attribute. Dacă acest comutator nu se foloseşte sunt afişate fişierele din director cu excepţia celor care au poziţionat atributul h – hidden sau s – system. Parametrul attribute poate avea următoarele valori:

Atribut Semnificaţie h Listare fişiere ascunse -h Listează toate fişierele mai puţin fişierele

ascunse s Listare fişiere sistem -s Listează toate fişierele mai puţin fişierele sistem d Listare subdirectoare -d Listează doar fişierele a Listare fişiere pregatite pentru arhivare ( pentru

comanda backup) -a Listează fişierele care nu au fost modificate de

la ultima arhivare (cu ajutorul comenzii backup) r Listare fişiere protejate la scriere -r Listează fişierele cu excepţia celor protejate la

scriere

Page 19: MS-DOS, Pascal

19

/o [[:]ord_sort] – permite specificarea ordinii de listare a fişierelor şi subdirectoarelor. Dacă se omite acest parametru fişierele se afişează în ordinea citirii lor de pe disc.

Parametrul ord_sort poate avea următoarele valori: Valoare Semnificaţie N Ordonare alfabetică crescătoare după nume -n Ordonare alfabetică descrescătoare după nume E Ordonare alfabetică crescătoare după extensie -e Ordonare alfabetică descrescătoare după extensie D Ordonare după dată şi oră, cel mai vechi primul -d Ordonare după dată şi oră, cel mai nou primul S Ordonare după dimensiune, cel mai mic primul -s Ordonare după dimensiune, cel mai mare primul G Directoarele la începutul listei -g Directoarele la sfârşitul listei C Ordonare după raportul de comprimare, cel mai mic primul -c Ordonare după raportul de comprimare, cel mai mare primul

Pot fi precizate mai multe valori pentru parametrul ord-sort fărăa fi separate de spaţiu sau alte caractere.

/s – afişează fiecare apariţie a fişierului specificat prin nume_fişier în directorul precizat şi subdirectoarele sale

/b – afişează directoarele şi fişierele câte unul pe linie. Nu afişează informaţii referitoare la eticheta de volum, spaţiu disponibil pe disc, dimensiunea totală a fişierelor listate.

/l – afişează numele de directoare şi fişiere nesortate şi cu litere mici /c[h] – afişează raportul de comprimare pentru fişier când se utilizează Double Space,

utilizând ca dimensiune standard a cluster-ului valoarea de 8 Kocteţi. Ieşirea comenzii DIR poate fi redirectată spre un fişier prin intermediul simbolului de redirectare

“ >> ” sau poate fi indirectată spre o altă comandă prin intermediul operatorului de indirectare “ | ” . Exemple: 1. Să se listeze toate fişierele din directorul SAH subdirectorul MAT.

DIR SAH\MAT 2. Să se listeze de pe discul A toate fişierele care au numele alcătuit din 3 caractere , dintre care

primele două sunt a şi b. DIR A:\ab*

3. Să se listeze de pe discul B subdirectorul SORIN toate fişierele care au numele alcătuit din 3 caractere şi extensia .TXT . DIR B:\SORIN\???.TXT

4. Să se listeze de pe discul C toate fişierele care au orice nume şi orice extensie DIR C:\*.* 5. Să se listeze de pe discul D subdirectorul SORIN fişierele condensat, pagină cu pagină, în

ordine alfabetică crescătoare cu litere mici. DIR D:\SORIN /p/w/o:e/l

6. Să se listeze conţinutul directorului DOS622 de pe discul C în fişierul CUPRINS.TXT DIR C:\DOS622 >>CUPRINS.TXT

Crearea unui director

Comanda pentru crearea unui sub-director este MKDIR sau prescurtat MD. Sintaxa:

MD [d:][cale]numed Comanda crează sub-directorul numed pe discul din unitatea specificată prin d la sfârşitul traseului indicat prin cale. Dacă pe disc deja există un sub-director cu acest nume, în locul specificat se afişează mesajul de eroare: “Directory already exists”. Dimensiunea maximă a parametrului incluzând numele unităţii, specificarea căii de căutare şi caracterele de separare “\” este de 63 de caractere. Numele unui director este de maxim 8 caractere plus eventual o terminatie de 3 caractere. Nu pot fi create două subdirectoare cu acelaşi nume în acelaşi director.

Page 20: MS-DOS, Pascal

Exemplu: Să se creeze următoarea structură de directori:

Considerăm că suntem în directorul rădăcină:

20

MD ELEV MD ELEV\CUMINTI MD ELEV\RAI STUDENT MD STUDENT MDSTUDENT \ BURSIERI MD STUDENT\LENESI

Ştergerea unui director

Ştergerea unui director se realizează cu ajutorul comezii RMDIR sau prescurtat RD.

Sintaxă: RD [d:][cale]numed

Comanda şterge sub-directorul cu numele simbolic numed, situat pe discul din unitatea d la sfârşitul traseului indicat prin cale. Ştergerea unui sub-director se poate face doar în cazul în care aceste este vid, adică nu conţine alte sub-directoare sau fişiere. Tentativa de ştergere a unui director care nu este vid se soldează cu următorul mesaj de eroare: “Invalid path, not directory or directory not empty” adică cale greşită, nu este director sau directorul nu este gol.

Exemplu: Să se şteargă structura definită la punctul precedent: RD ELEV\RĂI RD ELEV\CUMINŢI RD ELEV RD STUDENT\LENEŞI RD STUDENT\BURSIERI RD STUDENT Schimbarea directorului curent Se realizează cu ajutorul comenzii CHDIR sau prescurtat CD: Sintaxa: CD[d:][cale]numed Comanda schimbă directorul curent cu cel specificat prin numed situat pe discul din unitatea d la

sfârşitul traseului indicat prin cale. Dacă pe disc nu există directorul specificat se afişează mesajul de eroare: “Invalid directory” .

Prin comanda CD.. se revine dintr-un sub-director în directorul precedent. Prin comanda CD\ se revine dintr-un sub-director în directorul rădăcină. Comenzile interne sunt memorate în fişierele sistemului de operare, fapt pentru care sunt

accesibile odată cu acesta. Pentru fiecare comandă vom prezenta sintaxa şi efectul comenzii.

Comenzi referitoare la fişiere

Copierea fişierelor Comanda de copiere a fişierelor este comanda COPY şi permite următoarele operaţii: copierea

unui fişier sau grup de fişiere, concatenarea a două sau mai multe fişiere, copierea ieşirii unui dispozitiv într-un alt dispozitiv sau într-un fişier, copierea unui fişier la un dispozitiv.

Sintaxa: COPY [/y|/-y][a|b]sursa[/a|/b][+sursa[/a|/b][+…]] [destinatie[/a|/b][/v]]

Parametrii: Sursa – precizează locaţia şi numele fişierului sau al grupului de fişiere ce se copiază.

Pentru numele fişierelor se pot utiliza caracterele de nume global sau specificatorii multiplii “*” şi “?”.

ELEV

BURSIERI

LENESI

CUMINTI

RAI

Page 21: MS-DOS, Pascal

21

Destinatie - precizează locaţia unde vor fi copiate fişierele specificate în cadrul parametrului sursă. Dacă se specifică şi nume de fişiere copierea se face cu redenumire.

Comutatori: /y – înlocuirea fişierelor la copiere se face fără a se cere confirmarela suprascriere. /-y – înlocuirea fişierelor la copiere se face prin confirmare la suprascriere. /a - specifică executarea unei operaţii de copiere asupra unui fişier ASCII. /b - specifică executarea unei operaţii de copiere asupra unui fişier binar. /v – determină verificarea corectitudinii fişierelor copiate.

O formă mai des utilizată a comenzii COPY este următoarea: COPY [d1:][cale1]f1[.ext1] [d2:][cale2]f2[.ext2]

Comanda copiază unul sau mai multe fişiere desemnate prin numele f1.ext1 situat pe discul din unitatea d1 la sfârşitul traseului indicat prin cale1 şi le depune în fişierul f2.ext2 situat pe discul din unitatea d2 la sfârşitul traseului indicat prin cale2.

Dacă nu se specifică argumentul f2.ext2 fişierul din unitatea d2 situat la sfârşitul traseului indicat prin cale2 va avea acelaşi nume cu cel din unitatea d1, iar în cazul concatenării mai multor fişiere, numele fişierului din unitatea d2 va fi identic cu numele primului fişierspecificat în comanda COPY.

Dacă se folosesc specificatorii multiplii “*” şi “?” printr/o singură comandă COPY se pot copia mai multe fişiere. De exemplu:

A:\> COPY *.* C:\> SORIN – comanda copiază pe discul C: în directorul SORIN toate fişierele de pe discul din unitatea A: .

C:\> COPY SORIN\??D.* C:\ - comanda copiază în directorul rădăcină al discului C toate fişierele din directorul SORIN al discului C care au numele alcătuit din trei caractere dintre care al treilea carater este D şi au orice extensie.

Prin comanda COPY se pot concatena două sau mai multe fişiere. Concatenarea reprezintă operaţia de adăugare la sfârşitul unui fişier a conţinutului unuia sau mai multor fişiere.

Exemplu: C:\>COPY F1.TXT+F2.TXT+F3.TXT F.TXT - concatenează fişierele F1.TXT, F2.TXT , F3.TXT şi se obţine fişierul cu numele F.TXT . Fişierele F1.TXT, F2.TXT , F3.TXT nu se distrug. Cu ajutorul comenzii COPY se poate crea un fişier pe disc, introducând înregistrările de la

tastatură, caz în care sintaxa comenzii este următoarea: COPY CON [d:][cale]numef[.ext]

Exemplu: A:\>COPY CON C:\SORIN\F.TXT

IARNA PRIMĂVARA VARA TOAMNA CTRL+Z sau F6 Conţinutul fişierului este reprezentat de liniile ce conţin IARNA, PRIMĂVARA, VARA, TOAMNA. CTRL+Z sau F6 reprezintă sfâşitul de fişier. Ştergerea unui fişier Ştergerea unui fişier se realizează cu ajutorul comenzilor DEL sau ERASEcare au aceeaşi sintaxă: DEL[ETE][d:][cale]numef [/p] ERASE[d:][cale]numef [/p]

Comenzile şterg fişierul cu numele simbolic numef situat pe discul din unitatea d în sub-directorul de la sfârşitul traseului indicat prin cale .

Comutator: /p – înaintea fiecărei operaţii de ştergere apare un mesaj de confirmare a ştergerii.

Exemplu: A:\> DEL B:\SORIN\F.DAT – comanda şterge fişierul F.DAT din sub-directorul SORIN al

discului B. A:\>ERASE C:\*.* - şterge toate fişierele de pe discul C:\ . În prealabil se afişează mesajul :

Page 22: MS-DOS, Pascal

22

All files in directory will be deleted! Are you sure? (Y/N) - adică toate fişierele vor fi şterse şi dacă suntem siguri că vrem acest lucru:

Da sau NU. Tipărirea conţinutului unui fişier pe ecran Tipărirea pe ecran a conţinutului unui fişier se realizează cu ajutorul comenzii TYPE care are următoarea sintaxă: TYPE [d:][cale] numef

Comanda tipăreşte pe ecran conţinutul fişierului cu numele simbolic numef situat pe discul din unitatea d în directorul de la sfârşitul traseului indicat prin cale. În cazul în care dorim listarea la imprimantă a conţinutului fişierului tipărit pe ecran, apăsaţi combinaţia de taste CTRL+P sau CTRL+PRINTSCREEN. Ieşirea se poate redirecta spre imprimantă sau intr-un fişier de pe disc.

Exemplu: TYPE C:\FISIER.TXT – comanda tipăreşte pe ecran conţinutul fişierului FISIER.TXT.

Schimbarea numelui unui fişier

Schimbarea numelui unui fişier se realizează cu ajutorul comenzii REN[AME]. Sintaxa: REN[AME] [d:][cale]nume1[.ext1] nume2[.ext2] Comanda schimbă numele fişierului situat pe discul din unitatea d la sfârşitul traseului indicat prin

cale, din nume1[.ext1] în nume2[.ext2] Exemplu: REN C:\SORIN FISIER.TXT F.TXT – comanda redenumeşte fişierul FISIER.TXT în F.TXT.

Comenzi referitoare la ecran dată şi timp

Ştegerea ecranului

Ştergerea ecranului se realizează cu ajutorul comenzii CLS. Comanda şterge ecranul şi mută cursorul luminos în colţul din stânga sus al ecranului.

Modificarea prompt-ului de sistem

Modificarea prompt-ului de sistem se realizează cu ajutorul comenzii PROMPT. Comanda permite definirea sau modificarea prompt-ului de sistem.

Sintaxă: PROMPT [text] Pentru introducerea unor informaţii speciale în prompt pot fi utilizate următoarele combinaţii

formate din caracterul “$” şi încă un caracter conform tabelului:

Combinaţie Semnificaţie $q Caracterul egal “ = ” $$ Caracterul dolar “ $ ” $t Timpul curent $d Data curentă $p Unitatea şi calea curentă $v Numărul versiunii sistemului de operare $n Litera unităţii curente $g Caracterul mai mare“ > ” $l Caracterul mai mic“ < ” $b Caracterul pipe“ | ” $_ Caracterul “ Enter ” (începutul liniei

Page 23: MS-DOS, Pascal

23

Combinaţie Semnificaţie următoare)

$e Caracterul “ Esc” (codul ASCII 27) $h Caracterul “ BackSpace”

Exemplu: Să se seteze un prompt care afişează:

Data curentă Timpul curent Calea curentă

PROMPT $d$_$t$_$p$g

Afişarea datei curente

Afişarea datei curente se face cu ajutorul comenzii DATE care permite vizualizarea şi modificarea datei curente.

Sintaxă: DATE[ll-zz-aa]

ll - luna curentă (01-12) zz - ziua curentă (01-31) yy – anul curent (00- 99)

Introdusă fără parametrii comanda afişează data curentă. Introdusă cu parametrii comanda permite modificarea datei curente. Se pot folosi formele echivalente de date: 11-23-99, 11/23/99, 11.23.99 .

Afişarea timpului curent

Afişarea timpului curent se face cu ajutorul comenzii TIME care permite vizualizarea şi modificarea orei curente.

Sintaxă: TIME[hh:[mm[:ss[.xx]]]][a|p]

hh - ora curentă (01-23) mm - minutul curent (00-59) ss - secunda curentă (00- 59) xx – sutimea de secundă (00 - 99)

Introdusă fără parametrii comanda afişează ora curentă. Introdusă cu parametrii comanda permite modificarea orei curente.

Comutatori: a|p – este valabil pentru formatul orei cu 12 ore şi reprezintă:

a - Antemeridian p - Postmeridian

Alte comenzi interne

Validarea întreruperilor programelor

Validarea întreruperilor programelor se realizează cu ajutorul comenzii BREAK care are următoarea sintaxă: BREAK[ON|OFF] – comanda validează/invalidează întreruperea programelor, care nu lucrează cu dispozitive standard de intrare/ieşire la acţionarea tastelor CTRL+C, CTRL+BREAK. Implicit se consideră BREAK OFF.

Page 24: MS-DOS, Pascal

Afişarea versiunii sistemului de operare

Afişarea versiunii sistemului de operare se realizează prin intermediul comenzii VER care afişează următorul mesaj: “ MS-DOS Version is 6.22 ”.

Afişarea etichetei de volum

Afişarea etichetei de volum se face prin comanda VOL care are următoarea sintaxă: VOL[d:] Dacă nu se precizează unitatea se consideră cea implicită, iar dacă nu este înregistrată eticheta de volum se afişează mesajul: “ Volume in drive d has no label” .

Problema rezolvata

1. Să se creeze pe discul din unitatea C în directorul rădăcină următoarea structură de directori: a) crearea structurii se face din rădăcină

C:\>CD\ C:

24

C:\>MD ALFA C:\>MD BETA C:\>MD GAMA C:\>MD ALFA\ALFA1 C:\>MD ALFA\ALFA2 C:\>MD BETA\BETA1 C:\>MD BETA\BETA2 C:\>MD GAMA\GAMA1 C:\>MD GAMA\GAMA2 b) crearea structurii se face cu schimbarea directorului curent C:\>CD\ C:\>MD ALFA C:\>MD BETA

C:\>MD GAMA C:\>CD ALFA C:\ALFA>MD ALFA1 C:\ALFA>MD ALFA2 C:\ALFA>CD\ C:\>CD BETA C:\BETA>MD BETA1 C:\BETA>MD BETA2 C:\BETA>CD\ C:\>CD GAMA C:\GAMA>MD GAMA1 C:\GAMA>MD GAMA2 C:\GAMA>CD\ C:\>

2. Să se creeze prin introducere de la tastatură fişierul IARNA în subdirectorul ALFA1, PRIMAVAR în ALFA2, fişierul VARA în subdirectorul BETA1 şi toamna în BETA2. Fişierele vor conţine trei sporturi specifice anotimpului:

C:\>COPY CON ALFA\ALFA1\IARNA PATINAJ SCHI BOB ^Z

GAMA

BETA

ALFA ALFA1

ALFA2

BETA1

BETA2

GAMA1

GAMA2

Page 25: MS-DOS, Pascal

25

C:\>COPY CON ALFA\ALFA2\PRIMAVAR FOTBAL BASCHET GOLF ^Z C:\> COPY CON BETA\BETA1\VARA POPICE INOT CANOTAJ ^Z COPY CON BETA\BETA2\TOAMNA HANDBAL TIR BOX ^Z

3.Să se concateneze fişierele IARNA şi PRIMAVAR cu ajutorul comenzii de copiere sub numele de IARNAP în GAMA1 şi fişierele VARA şi TOAMNA sub numele de VARAT în GAMA2. Rezolvare: C:\>COPY CON ALFA\ALFA1\IARNA+ALFA\ALFA2\PRIMAVAR GAMA\GAMA1\IARNAP C:\>COPY CON BETA\BETA1\VARA+BETA\BETA2\TOAMNA GAMA\GAMA2\VARAT

4. Să se afişeze pe ecran denumirile celor şase fişiere în două moduri. din rădăcină; după ce în prealabil s-a făcut poziţionarea în director lângă fişier; Rezolvare:

a) C:\>TYPE ALFA\ALFA1\IARNA C:\>TYPE ALFA\ALFA2\PRIMAVAR C:\>TYPE BETA\BETA1\VARA C:\>TYPE BETA\BETA2\TOAMNA C:\>TYPE GAMA\GAMA1\IARNAP C:\>TYPE GAMA\GAMA2\VARAT b) C:\>CD ALFA\ALFA1 C:\ALFA\ALFA1>TYPE IARNA C:\ALFA\ALFA1>CD.. C:\ALFA>CD ALFA2 C:\ALFA\ALFA2>TYPE PRIMAVAR C:\ALFA\ALFA2>CD\ C:\>CD BETA\BETA1 C:\BETA\BETA1>TYPE VARA C:\BETA\BETA1>CD.. C:\BETA>CD BETA2 C:\BETA\BETA2>TYPE TOAMNA C:\BETA\BETA1>CD\ C:\CD GAMA\GAMA>TYPE IARNAP C:\GAMA\GAMA1>CD.. C:\GAMA>CD GAMA2 C:\GAMA\GAMA2>TYPE VARAT C:\GAMA\GAMA2>CD\ C:\>

5. Să se concateneze fişierele IARNAP şi VARAT şi să se creeze fişierul SPORTURI în directorul ALFA. Rezolvare: C:\>COPY GAMA\GAMA1\IARNAP+GAMA\GAMA2\VARAT ALFA\SPORTURI

Page 26: MS-DOS, Pascal

26

6. Să se redumească fişierul SPORTURI în SPORTURI.TXT şi să i se tipărească conţinutul pe ecran şi la imprimantă. Rezolvare:

C:\>REN ALFA\SPORTURI SPORTURI.TXT C:\>TYPE ALFA\SPORTURI.TXT C:\>COPY ALFA\SPORTURI.TXT LPT1

7. Să se şteargă structura definită anterior, folosind DEL, ERASE, DELTREE şi RD: Rezolvare: C:\>CD\ C:\>DEL ALFA\ALFA1\*.* C:\>DEL ALFA\ALFA2\*.* C:\>RD ALFA1 C:\>RD ALFA2 C:\>RD ALFA C:\>DELTREE BETA2 /Y C:\>DEL GAMA\GAMA1\*.* C:\>DEL GAMA\GAMA2\*.* C:\>RD GAMA\GAMA1 C:\>RD GAMA\GAMA2 C:\>RD GAMA C:\>TREE \/f

Page 27: MS-DOS, Pascal

27

SISTEMUL DE OPERARE WINDOWS

Generalităţi

După cum s-a observat din paginile precedente (referitoare la sistemul de operare MS-DOS), chiar şi pe o dischetă (disc flexibil) şi, deci, cu atât mai mult pe hard-disk (disc fix), în situaţia în care avem mai multe fişiere referitoare la mai multe domenii, este de preferat ca aceste fişiere să fie organizate (pe disc) în grupuri, corespunzător domeniilor cărora le fac parte informaţiile (sau programele) respective. Acest lucru a fost posibil prin gruparea fişierelor în directoare. Pentru a putea lucra cu fişiere şi directoare, în sistemul de operare MS-DOS există un set de comenzi cu un format bine stabilit. Plecând de la ideea că folosirea acestor comenzi este destul de greoaie, s-a încercat, de-a lungul timpului, să se ajungă la o interfaţă om-calculator cât mai “prietenoasă”. S-a ajuns astfel la programe utilitare (Norton Commander, Xtree-Gold, Dos-Navigator ş.a.) prin care comenzile DOS au fost înlocuite cu apăsarea uneia sau mai multor taste sau combinaţii de taste. Acest proces evolutiv nu s-a oprit nici azi, ajungându-se acum ca, prin pachete de programe de tip “Windows”, toate operaţiile referitoare la fişiere şi directoare să se facă prin simpla selecţie (cu ajutorul “mouse”-ului) a acestor fişiere sau directoare şi “apăsarea” (tot cu ajutorul “mouse”-ului) a unor butoane de pe ecran, butoane pe care apar desenate pictograme sugestive şi care sunt, de obicei, însoţite de mesaje explicative. Prima versiune a sistemelor de tip “Windows” a fost Windows 3.0 care era un sistem foarte sărăcăcios dotat pentru lucru în reţea de calculatoare şi era foarte “leneş”. Versiunile următoare Windows 3.x erau “sisteme de operare” pe 16 biţi şi au avut un foarte mare succes, mai ales Windows 3.11 for Workgroups, care avea facilităţi suplimentare de integrare a calculatorului într-o reţea. Windows 95 a devenit un sistem de operare în sine (pe 32 biţi), acest sistem lansându-se automat odată cu pornirea calculatorului. El este, de asemenea, foarte rapid şi performant pentru lucru în reţea de calculatoare.

Cel mai recent sistem de operare pentru calculatoarele personale, şi anume Windows XP (eXtreme Programming) a fost lansat de compania Microsoft în octombrie 2001 în versiunile Home Edition şi Professional. Windows XP reprezintă următoarea versiune de Microsoft Windows după 95, XP, 2000 şi Millenium. Versiunea Home Edition (mai ieftină) este foarte bună pentru majoritatea utilizatorilor. Versiunea Windows XP Professional poate fi privită şi ca un Home Edition cu dotări suplimentare. Un următor sistem de operare de la Microsoft, în versiunea beta, având numele de cod Longhorn a fost lansat în anul 2005, după cum anunţă reprezentanţii firmei. Windows XP se impune prin îmbinarea facilităţilor de securitate, management al resurselor şi fiabilitate, cu cele mai noi facilităţi Plug and Play. Windows XP este un sistem de operare ce poate rula mai multe programe în acelaşi timp (multitasking) şi dispune de interfaţă grafică deosebită, de tip GUI (Graphical User Interface). Interfaţa grafică este cea care defineşte modul în care utilizatorul comunică cu sistemul de operare. Dacă este singurul sistem de operare instalat pe calculator, Windows XP se lansează automat la pornirea calculatorului. Cerinţele minime de sistem care se impun sunt: 64 GB memorie RAM, processor Pentium II sau echivalent şi aproximativ 1 GB spaţiu liber pe hard discul calculatorului. Spre deosebire de sistemul de operare MS-DOS şi Windows 3.x, noţiunea de director (directory) este înlocuită cu noţiunea de pliant (folder), pliant care, ca şi directorul, conţine mai multe dosare fişiere (files). De asemenea, în Windows, fiecare fişier şi pliant este însoţit de o mică pictogramă numită “icon”. Activitatea în Windows se desfăşoară în ecranul de lucru (desktop), ecran în care, pentru fiecare mediu de lucru, se deschide o fereastră (window) specifică, fereastră care este dotată, în partea de sus, cu o bară de titlu (Title bar); sub bara de titlu este bara de meniu(Meniu bar) cu mai multe opţiuni specifice mediului de lucru respectiv; imediat sub meniu este o bară de butoane utile şi, în partea de jos a ferestrei, o bară de stare. Bara de butoane (“Toolbar”) şi bara de stare (“Status Bar”) au o afişare opţională în fereastră, afişare controlată prin setările făcute din meniu.

Page 28: MS-DOS, Pascal

Ecranul de lucru (desktop), pornirea şi oprirea sistemului

La pornirea calculatorului (şi deci la lansarea în execuţie a lui Windows) pe ecran se afişează ecranul de lucru Windows, ecran care, în partea de jos, are afişată bara de operaţii-lucrari Windows (Task bar). De obicei, în partea stângă a acestui ecran, există o listă de pictograme (“icon”-uri - functie de versiunea sistemului de operare in versiunile anterioare, în partea stângă a suprafeţei de lucru se aflau cinci sau mai multe pictograme, în funcţie de opţiunile selectate în timpul instalării şi în funcţie de personalizarea suprafeţei de lucru de către utilizator. În mod implicit, în Windows XP este afişată doar pictograma Recycle Bin) prin intermediul cărora se deschid ferestrele corespunzătoare unor medii de lucru şi anume:

• “My Computer” (calculatorul meu) care, după apel, conţine pictograme ce reprezintă unităţile de disc şi pliantele (directoarele) calculatorului pe care lucraţi;

• “Network Neighborhood” (vecinătăţile în reţea) care poate fi utilizată doar în situaţia în care calculatorul cu care lucraţi este configurat astfel încât să poată utiliza un serviciude gestiune a fişierelor în reţea (deci în situaţia în care acest calculator este cuplat la reţea internă). La deschiderea acestei ferestre se afişează care sunt calculatoarele ce figurează în acelaşi grup de lucru cu calculatorul dumneavoastră;

• “Internet Explorer ” se foloseşte pentru cuplarea la reţeaua internaţională de calculatoare “Internet”;

Suprafaţa de lucru (Desktop)

Pictograme (Icons)

Bara de lucrări Suprafaţa de notificare Butonul Start (Taskbar) (Notification area)

Fig.3.1. Ecranul Windows XP

• “Recycle Bin ” (cosul de gunoi) afişează un tabel cu toate entităţile din locul temporar de depunere a entităţilor care au fost şterse (fişiere sau pliante). Se poate folosi acest tabel pentru a recupera fişiere sau pliante care au fost şterse din greşeală. Acest lucru este posibil datorită faptului că, prin ştergerea unor entităţi (fişiere, pliante, scurtături) acestea nu sunt şterse fizic, ci doar mutate în acest pliant (director). Pentru a şterge definitiv o astfel de entitate, trebuie să se golească acest “Recicle Bin” (un fel de coş de gunoi). Aceasta se poate face, în cadrul ferestrei “Recicle Bin”,

28

Recycle Bin

Page 29: MS-DOS, Pascal

apelând opţiunea “Empty Recycle Bin” a meniului “Files” sau, fără a deschide fereastra “Recicle Bin”, prin poziţionarea cursorului “mouse”-ului pe pictograma (“icon”-ul) respectivă şi apăsarea butonului din dreapta al acestuia (meniu rapid), după care, din submeniul afişat, prin selectarea opţiunii “Empty Recycle Bin” (golirea cutiei de reciclare);

• “Shortcut”-urile (scurtăturile) oferă posibilitatea unui acces rapid la un anumit program sau pachet de programe din Windows sau din sistemul de operare MS-DOS, la un document, la o imprimantă, la un disc sau chiar la alt calculator din reţea;

• butonul “Start” care se gaseste in stinga barei de lucrarieste este butonul prin intermediul căruia se pot face o mulţime de operaţii şi anume: ∗ lansarea în execuţie a unor programe utilitare sau programe utilizator; ∗ deschiderea unui document în vederea adăugării de informaţii, modificării de informaţii sau

doar în vederea citirii lui; ∗ schimbarea unor caracteristici (setări) ale sistemului Windows; ∗ obţinerea asistenţei din partea sistemului de operare MS–DOS (ieşirea în prompterul

sistemului de operare MS-DOS); ∗ multe alte operaţiuni.

29

În partea dreaptă a barei se află zona de notificare (Notification area). Între butonul Start şi zona de notificare utilizatorul poate afişa o serie de bare de instrumente implicite sau proprii:

- 1 Bara de adrese (Address ); - 2. Bara de legături (Links); - 3. Bara pentru vizualizarea tipului tastaturii (engleză, română, etc.) (Language bar); - 4. Suprafaţa de lucru (Desktop); - 5. Bara de lansare rapidă (Quick Launch); - 6. Bară de instrumente nouă, creată de utilizator (New Toolbar).

Schimbarea proprietăţilor barei de lucrări şi/sau ale meniului Start se poate face apelând din meniul contextual (clic dreapta pe bara de lucrări), comanda Properties. În caseta de dialog Taskbar and Start meniu Properties, zona Taskbar (figura 3.3.) se modifică proprietăţile barei de lucrări, iar în fişa Start Meniu se modifică proprietăţile meniului Strat. Meniul butonul Start Butonul Start din Windows XP este mult mai mult decât un simplu lansator de programe. După executare clic pe butonul START se afişează următoarele meniuri, dosare şi comenzi (fiecare având în stânga o pictogramă) (figura3.4):

Meniul All Programs – toate programele; Dosarul My Documents – documentele mele; Dosarul My Pictures – imagini (reprezentări grafice

.GIF, .BMP, .JPEG etc.) Dosarul My Music – fişiere audio (.WAV, .RMI,

.MID etc.) Dosarul My Computer – computerul meu; Dosarul My Network Places – locaţii în reţea; Control Panel – panoul de control;

Fig. 3.2.Bara de lucrări (Taskbar)

5 6 3 2 1 4

Fig. 3.3. Zona Taskbar a casetei de dialog Taskbar and Start menu Properties

Page 30: MS-DOS, Pascal

Connect To – conexiuni în Internet; Meniul Help and Support –ajutor şi asistenţă soft; Meniul Search –căutare; Comanda RUN – lansează în execuţie (linie de comandă); Comanda Log Off – permite schimbarea rapidă a utilizatorului; Comanda Turn Off Computer – închiderea calculatorului.

Meniul All Programs După poziţionarea indicatorului mouse-ului pe All Programs, grupurile de programe se vor alinia unul după altul în cascadă, într-o serie de meniuri noi care se deschid la dreapta meniului de START. Lansarea în execuţie a programului dorit se face cu un clic pe numele sau pictograma programului respectiv. Meniul All Programs este similar cu cel din Windows 98, 2000 şi Millenium, putându-se modifica ordinea Metoda a II-a - prin tragere şi fixare (drag and drop): În partea dreaptă a ferestrei se selectează fişierele sau dosarele ce urmează să fie copiate şi/sau mutate.

Fig. 3.4. Meniul butonului Start

Dacă bara de explorare dosare (Folders) nu este vizibil dosarul (sau unitatea de disc) în care se doreşte mutarea sau copierea obiectelor, se va utiliza bara de derulare verticală pentru a-l aduce în imagine şi semnul pentru a desfăşura conţinutul dosarului. Pentru a copia un obiect, menţine apăsată tasta Ctrl şi se trage acesta la destinaţie în bara de explorare a ferestrei.

Când se menţine apăsată tasta Ctrl, în partea de jos a indicatorului mouse-ului va apărea semnul plus, fapt ce arată acţiunea de copiere a obiectelor. Destinaţia va fi marcată prin selecţie. Pentru a muta un obiect selectat, acesta se trage la destinaţie în bara de explorare a ferestrei.

Ştergerea fişierelor şi a dosarelor

Pentru ştergerea fişierelor şi dosarelor se procedează astfel: 1. Se selectează obiectul sau obiectele care se doresc a fi şterse.

2. Se execută clic pe butonul Delete din bara cu instrumente sau se apelează comanda Delete din meniul File, sau se execută clic dreapta şi se alege Delete din meniul contextual. 3. Se execută clic pe Yes la apariţia casetei de dialog Confirm File Delete (confirmă ştergerea fişierului) sau clic pe No dacă se doreste abandonarea stergerii; Dacă se şterg mai multe obiecte, pe ecran va apare caseta de dialog Confirm Multiple File Delete (confirmă ştergerea mai multor fişiere). De asemenea, fişierele şi dosarele pot fi şterse foarte uşor prin tragere peste pictograma Recycle Bin de pe suprafaţa de lucru.

Refacerea fişierelor şterse

Pentru refacerea fişierelor şi dosarelor şterse se procedează astfel: 1. Se execută dublu clic pe pictograma Recycle Bin de pe suprafaţa de lucru;

30

Page 31: MS-DOS, Pascal

31

2. Se selectează în fereastra Recycle Bin dosarul (dosarele) şi/sau fişierul (fişierele) ce urmează să fie refăcute; 3. Se execută clic dreapta pe obiectul (obiectele) selectat şi apoi clic pe Restore (restabileşte) sau se alege Restore din meniul File.

♦ Fişierele sunt refăcute în dosarele din care au fost şterse. Dacă dosarul în care au existat fişierele a fost şters, acesta se va reface la rândul lui.

Redenumirea fişierelor şi dosarelor

Pentru redenumirea fişierelor şi dosarelor se execută paşii: 1. Se execută clic pe pictograma dosarului sau al fişierului pentru a-l selecta; 2. Se apelează comanda Rename din meniul File sau sau se apelează comanda Rename din meniul contextual (clic dreapta pe pictograma selectată) sau se execută clic pe numele dosarului sau al fişierului (nu pe pictogramă).

Astfel, numele va fi înconjurat de o casetă cu un punct de inserţie pâlpâitor. 3. Se introduce de la tastatură noul nume şi se apasă Enter. Observaţie: Pentru a anula redenumirea se apasă Ctrl +Z sau se apelează comanda Undo din meniul Edit. Începând cu Windows 95 numele dosarelor şi fişierelor pot conţine 255 caractere, printre care şi caracterul spaţiu, mai puţin caracterele: / \ : ∗ ? ″ < > ⏐ .

Crearea de scurtături pe Desktop

Crearea scurtăturilor (Shortcuts) pe Desktop pentru aplicaţii, dosare sau fişiere se face prin oricare din metodele:

Se selectează obiectul (aplicaţia, dosarul fişierul) şi se apelează din meniul File comanda Create Shortcut. Lângă obiectul original va apare scurtătura ce se poate muta (prin trage şi lasă) pe dosarul Desktop (în bara de explorare dosare) sau direct pe Desktop dacă fereastra este redimensionată.

Se selectează obiectul (aplicaţia, dosarul fişierul) şi se apelează din meniul contextual comanda Create Shortcut. Lângă obiectul original va apare scurtătura ce se poate muta (prin trage şi lasă) pe dosarul Desktop (în bara de explorare dosare) sau direct pe Desktop dacă fereastra este redimensionată

Se selectează obiectul (aplicaţia, dosarul fişierul) şi se apelează din meniul File submeniul Send To, comanda Desktop (create shortcut).

Se selectează obiectul (aplicaţia, dosarul fişierul) şi se apelează din meniul contextual submeniul Send To, comanda Desktop (create shortcut).

Golirea dosarului Recycle Bin

Pentru a se goli dosarul Recycle Bin se execută una din operaţiile: - dacă dosarul Recycle Bin este deja deschis în Windows Explorer, se alege din meniul File comanda Empty Recycle Bin (goleşte lada de gunoi); - pe suprafaţa de lucru (desktop) se execută clic drepta pe pictograma dosarului Recycle Bin iar apoi clic pe comanda Empty Recycle Bin. Observaţie: Odată ce coşul de gunoi s-a golit, fişierele nu mai pot fi recuperate. Pentru a goli doar o parte din obiectele existente în coşul de gunoi, acestea trebuie să fie selectate, după care se execută clic dreapta pe fişierele selectate şi se alege comanda Delete. Apoi, se confirmă ştergerea cu Yes.

Page 32: MS-DOS, Pascal

32

Utilizarea meniurilor rapide

Pentru a gestiona pliante (fişiere) prin meniuri rapide, se procedează astfel: ∗ se poziţionează cursorul ”mouse”-ului pe pictograma corespunzătoare pliantului (fişierului)

respectiv, după care se execută “clic” dreapta (se apasă butonul din partea dreaptă a “mouse”-ului). Se afişează astfel meniul rapid care conţine opţiunile cele mai uzuale ale meniurilor din bara de meniuri şi care se pot selecta la fel ca acelea;

∗ alegerea opţiunii “Open” (deschide), din submeniul afişat, va avea ca efect deschiderea pliantului respectiv (respectiv, lansarea în execuţie a programului din fişierul respectiv sau lansarea în editare a documentului din fişierul respectiv), efect echivalent cu executarea unui dublu “clic” stânga pe pictograma pliantului (fişierului). In cazul în care fişierul conţine un text (este fişier document) şi Windows 95 nu depistează automat editorul cu care a fost creat, această opţiune devine singura din grupul respectiv, are forma “Open With…” (deschide folosind…) şi, la apelarea ei, se afişează pe ecran o casetă cu lista tuturor programelor disponibile care ar putea fi folosite în vederea editării respective. Se poate alege unul din programele respective executând dublu “clic” stânga pe poziţia acestuia din listă;

∗ a doua opţiune din primul grup, în cazul pliantelor, este “Explore” (explorează) şi are efect echivalent cu deschiderea pliantului respectiv prin intermediul programului “Windows Explorer”;

∗ a doua opţiune din primul grup (dacă există), în cazul fişierelor de tip document, este “Print” (listează) şi are ca efect listarea documentului respectiv la imprimanta cuplată la calculatorul dumneavoastră (dacă aveţi cuplată o imprimantă);

∗ a treia opţiune din primul grup, în cazul pliantelor, este “Scan for viruses” (scanare= căutare pentru depistarea viruşilor) şi are ca efect scanarea pliantului (fişierului care conţine un program executabil) în vederea depistării unor eventuali viruşi;

∗ a treia opţiune din primul grup (dacă există), în cazul fişierelor de tip document, este “Edit” (editează) sau “Quick View” (vizualizare rapidă) şi au ca efect lansarea în execuţie a editorului corespunzător în vederea editării (modificării) sau vizualizării conţinutului documentului respectiv;

∗ a patra opţiune din primul grup, în cazul pliantelor, este “Find…” (caută…) şi are ca efect afişarea unei casete de dialog prin intermediul căreia se poate căuta un pliant, casetă identică cu cea prezentată în aliniatul de mai jos;

∗ al doilea grup de opţiuni, din acelaşi meniu rapid, este alcătuit doar din opţiunea “Send To” (trimite la) şi are ca efect “trimiterea” întregului conţinut al pliantului (fişierului) marcat către unitatea de disc flexibil (“3½ Floppy (A)”), către cutia poştală a poştei electronice (“Mail Recipient”) sau către “servieta mea” (“My Briefcase”) ş.a.;

∗ următoarele două grupuri conţin opţiuni ale căror efecte asupra pliantelor (fişierelor) au mai fost prezentate în aliniatele precedente şi anume: “Cut” (decupează), “Copy” (copiază), “Paste” (lipeşte), “Delete” (şterge) şi “Rename” (redenumeşte);

∗ în afară de opţiunile enumerate mai sus, în aceste două grupuri de opţiuni mai există opţiunea “Create Shortcut” (creează scurtătură), prin intermediul căreia se creează o scurtătură pentru accesul rapid la pliantul (fişierul) respectiv. Numele implicit al scurtăturii este alcătuit din numele entităţii (pliantului sau fişierului) pentru care s-a făcut scurtătura precedat de caracterele “Shortcut to ” (scurtătură către), iar “icon”-ul acestei scurtături este reprezentat de aceeaşi pictogramă ca cea a entităţii respective, doar că, în colţul din stânga jos al acestei pictograme, va apare o săgeată în sus “îndoită” spre dreapta (simbol ce sugerează scurtătura);

Observaţie: Pentru a crea o scurtătură spre o aplicaţie DOS sau Windows direct din ecranul de lucru, se poziţionează cursorul “mouse”-ului oriunde pe partea liberă a acestui ecran (partea fără “icon”-uri) şi se execută un “clic” dreapta. Din meniul afişat se apelează opţiunea “New” (nou), iar din submeniul afişat în urma apelării opţiunii “New” se alege opţiunea “Shortcut” (scurtătură). In fereastra “Create Shortcut” (creează scurtătură) astfel deschisă se “apasă”, de obicei, butonul “Browse” (răsfoire) pentru a căuta aplicaţia dorită. Se deschide astfel o nouă fereastră (“Browse”) prin intermediul

Page 33: MS-DOS, Pascal

căreia se caută în pliante şi se selectează aplicaţia dorită. După ce s-a selectat fişierul ce conţine aplicaţia dorită, se “apasă” tot butonul “Open”, operaţie în urma căreia, în caseta de text “Command Line” (linia de comandă) a ferestrei “Create Shortcut”, vor apare completate calea până la aplicaţia respectivă şi numele fişierului (executabil) ce conţine aplicaţia. Se va “apăsa”, apoi, butonul “Next” (următoarea fază), operaţiune în urma căreia se va afişa fereastra “Select a Title for the Program” (selectează un titlu pentru program), iar în caseta text “Select a Name for the Shortcut” (selectează un nume pentru scurtătură) se poate înlocui numele implicit, dat de către Windows 95 scurtăturii, cu numele dorit. Pentru a definitiva crearea scurtăturii se “apasă” butonul “Finish” (sfârşit), situaţie în urma căreia, pe ecranul de lucru, va apare afişat “icon”-ul cu săgeată “îndoită” însoţit de numele dorit al scurtăturii.

∗ singura opţiune a ultimului grup de opţiuni din meniul rapid corespunzător unei entităţi (pliant, fişier sau chiar scurtătură) este opţiunea “Properties” (proprietăţi), opţiune la apelul căreia se afişează o casetă de dialog ce conţine toate informaţiile, în detaliu, despre entitatea respectivă (selectată cu clic dreapta).

Căutarea rapidă (automată) pe disc a unei entităţi Pentru a găsi un pliant sau fişier pe disc, se procedează astfel:

∗ se “apasă” butonul “Start” şi în meniul afişat se apelează opţiunea “Find”. Acelaşi efect îl are apelul opţiunii cu acelaşi nume (“Find”) al meniului “Tools” din fereastra Windows Explorer;

∗ din noul (sub)meniu afişat în urma primei operaţiuni se selectează opţiunea “Files or Folders …” (fişiere sau pliante directoare);

∗ din caseta de dialog afişată după primele două etape, se alege submeniul (pagina) “Name & Location” (nume şi localizare), iar în caseta de text se va introduce numele pliantului sau al fişierului căutat. In acest nume se pot folosi şi caracterele “*” sau “?” pentru a crea aşa-zisele denumiri generice, caractere care au acelaşi mod de utilizare şi acelaşi efect ca şi în sistemul de operare MS-DOS;

∗ pentru a modifica unitatea de disc în care se face căutarea entităţii respective, se “apasă”

butonul din dreptul casetei text “Look in:” (căutare în:). De asemenea, dacă nu se cunosc prea multe detalii despre pliantul sau fişierul respectiv, se “apasă” butonul “Browse” (răsfoire) şi, apoi, se selectează (cu dublu “clic” stânga) pliantul sau fişierul dorit din lista casetei de dialog “Browse”;

∗ se “apasă”, apoi, butonul “Find now” (găseşte acum) pentru a lansa căutarea propriu-zisă în discul sau pliantul ales prin intermediul casetei text “Look in”;

∗ se “apasă” butonul “New Search” (căutare nouă) pentru căutarea unui nou pliant sau fişier. După ce se anulează (“apăsând” butonul OK) mesajul prin care se avertizează că va fi anulată căutarea anterioară, apare caseta “Find”, gata pentru o nouă căutare;

∗ pentru a închide această casetă (după ce s-au făcut căutările dorite), se “apasă” (se execută

“clic” stânga) pe butonul din bara de titlu. Observaţie: Folosind (sub)meniul (pagina) “Advanced” din caseta “Find” se pot face cău-tări după tipul fişierului sau după un eventual şir de caractere conţinut în tipul fişierului (Of Type:).

33

Page 34: MS-DOS, Pascal

ALGORITMI Prin algoritm se înţelege un sistem de calcule, prin care, pe baza unor date iniţiale(date de intrare) se obţin rezultatele(datele de ieşire) în timp util. Un algoritm este format din mai mulţi paşi corespunzători etapelor de calcul. Paşii se execută în ordinea naturală. Denumirea de algoritm provine de la numele matematicianului persan Abu Ja’far ibn Musa al Khowarizmi (Abu Ja’far fiul lui Musa din oraşul Khowarazm – astăzi Khiva în Uzbekistan). Algoritmii au următoarele proprietăţi:

1. Generalitate – rezolvă toate problemele dintr-o clasă de probleme. 2. Finitudine – se termină întotdeauna după un număr finit de paşi. 3. Claritate – prezintă toate etapele de rezolvare şi acestea pot fi descrise pe un sistem de prelucrare

a datelor. Un algoritm care se bucură de proprietatea de generalitate şi claritate, dar care nu este finit se

numeşte metodă de calcul Succesiunea regulilor de calcul dintr-un algoritm se reprezintă sub forma schemelor logice,

diagramelor arborescente, pseudocod. Pseudocodul reprezintă un limbaj de tip algoritmic pentru reprezentarea simplificată a

algoritmului. Pseudocodul este constituit din instrucţiuni standard care definesc structurile algoritmice fundamentale :secvenţa, selecţia şi iteraţia.

Simboluri grafice utilizate în reprezentarea algoritmilor prin scheme logice

NR. SIMBOL DENUMIRE UTILIZARE

1.

←,↑,→,↓

Săgeată Pune în evidenţă înlănţuirea componentelor în schema logică

2. ○ Bloc conector (Nod)

Pune în evidenţă sfârşitul unei structuri alternative sau începutul unei structuri repetitive

3.

Bloc terminal Pune în evidenţă începutul sau sfârşitul schemei logice

4.

Bloc de calcul Pune în evidenţă calculele ce se efectuează într-un pas

5.

Bloc de intrare/ieşire

Pune în evidenţă operaţiile de intrare(citirea datelor) şi operaţiile de ieşire(afişarea rezultatelor)

6.

Bloc de decizie Marchează ramificaţiile în funcţie de valoarea de adevăr a condiţiei C

7.

Bloc procedural Inserează în schema logică o altă schemă logică existentă

DaNu C

Teorema de structură

Orice algoritm se poate reprezenta prin trei tipuri de structuri: liniară, alternativă şi repetitivă, similar logicii matematice în care orice funcţie se poate exprima folosind negaţia, disjuncţia şi conjuncţia.

34

Page 35: MS-DOS, Pascal

Reprezentarea grafică a structurilor algoritmice fundamentale şi codificarea lor în Pseudocod şi

Turbo Pascal

Tip Structură Reprezentare

grafică Codificare în

Pseudocod Codificare în

Pascal

Liniară

Instrucţiune 1 Instrucţiune 1;

Alternativă Simplu

Alternantă

IF c THEN Instrucţiune 1 ENDIF

IF c THEN Instrucţiune1;

Alternativă Dublu

Alternantă

IF c THEN Instrucţiune 1 ELSE Instrucţiune 2 ENDIF

IF c THEN Instrucţiune1 ELSE Instrucţiune 2;

Alternativă Selecţia multiplă

CASE sel OF 1:Instrucţiune1 2:Instrucţiune2 : n:Instrucţiune n ENDCASE

CASE sel OF 1:instrucţiune1; 2: instrucţiune2; : n: instrucţiune n; END;

Repetitivă While-do

WHILE c Instrucţiune 1; REPEAT

WHILE c DO Instrucţiune 1;

Repetitivă Do-until

DO Instrucţiune 1 : Instrucţiune n UNTIL c

REPEAT Instrucţiune 1; : Instrucţiune n; UNTIL c;

35

Page 36: MS-DOS, Pascal

36

Tip Structură Reprezentare grafică

Codificare înPseudocod

Codificare în Pascal

Repetitivă For-do

FOR contor=vi,vf Instrucţiune 1 REPEAT

Pentru increment=1 FOR c:=vi TO vf DO Instrucţiune 1; Pentru increment=-1 FOR c:=vi DOWNTO vf DO Instrucţiune 1;

Observaţii:

• Blocurile de instrucţiuni în care apare o literă semnifică un set de una sau mai multe instrucţiuni. • In sintaxa instrucţiunilor codificate în Pascal în locurile în care figurează cuvântul instrucţiune specifică că se poate

executa o singură instrucţiune în acel loc. În cazul în care se doreşte executarea mai multor instrucţiuni se foloseşte instrucţiunea compusă.

LIMBAJUL TURBO PASCAL

Structura generală a unui program

Structura generală a unui program Turbo Pascal este următoarea:

PROGRAM nume; USES unit1,unit2,…; LABEL eticheta1, eticheta2,…; CONST identif1=constanta1; Identif2=constanta2; …

varinit1:tip1=constanta1; varinit2:tip2=constanta2; …

TYPE numetip1=tip1; numetip2=tip2; … VAR var1:tip1; var2:tip2; … Declaraţii FUNCTION şi PROCEDURE BEGIN Instrucţiune1; Instrucţiune2; … END. Prima linie este opţională şi introduce numele programului. Clauza USES este opţională şi

enumeră toate unit-urile care sunt utilizate în program. Urmează blocul declarativ, format din şase secţiuni corespunzătoare etichetelor(label), constantelor (const), tipuri (type), variabile(var), funcţii (funcţion) şi proceduri(procedure). Secţiunea LABEL declară toate etichetele utilizate în program. Secţiunea CONST defineşte constantele simbolice şi variabilele iniţializate ale programului. Secţiunea TYPE defineşte tipurile de date ale utilizatorului. Secţiunea VAR conţine declararea variabilelor neiniţializate din program. Secţiunea FUNCTION şi PROCEDURE reprezintă definirea de subprograme utilizate în programul principal, care execută anumite acţiuni asupra variabilelor specificate prin argumente.

Urmează zona operativă sau programului principal, cuprinsă între cuvintele rezervate BEGIN şi END. care conţine instrucţiunile programului. Secţiunea program principal este obligatorie.

Page 37: MS-DOS, Pascal

37

Lexicul limbajului

Vocabularul reprezintă totalitatea cuvintelor care pot apare în cadrul unui program. Aceste entităţi sunt alcătuite din caractere. În Turbo Pascal avem următoarele entităţi:

Simboluri speciale şi cuvinte rezervate Identificatori Directive Etichete Separatori

În limbajul Turbo Pascal se utilizează următoarele caractere: Literele mici şi mari din alfabetul latin: a - z, A - Z; Cifrele sistemului de numeraţie zecimal: 0 – 9; Caractere speciale:= + - * / [ ] { } ( ) , . ; : “ ‘ @ # $ % ^ & ! etc. Caractere speciale perechi: >= <= := <> (* *) (. .) . Perechea (* este echivalentă cu {, *) cu },

(, cu [ , iar .) cu ] Separatori: spaţiul, tab, caracterul Enter

Un identificator este numele unui element din program, fie el etichetă, variabilă, tip, subprogram,

camp, unit. Identificatorul este prezentat ca o însiruire de litere, simboluri şi cifre, prima obligatoriu literă sau caracterul _.Un identificator sub Turbo Pascal nu poate include caracterul spaţiu în cadrul său. Turbo Pascal nu poate accepta identificatori mai mari de 64 de caractere. Un identificator nu poate conţine simboluri speciale precum: $,%,{,},[,]. Turbo pascal nu face distincţie între majuscule şi minuscule.

Orice identificator trebuie declarat înainte de a fi folosit. Există şi unii identificatori predefiniţi: Cos, Sin, Write, Readln. O redeclarare a acestora duce la pierderea sensului iniţial.

Cuvintele rezervate formează cuvintele cheie ale limbajului Pascal. Ele reprezintă identificatori cu semnificaţie fixată care nu pot fi folosiţi în alt context decât cel precizat de semantica limbajului. Cuvintele rezervate ale limbajului Turbo Pascal sunt:

AND ELSE LABEL SHL ARRAY END MOD SHR ASM EXIT NIL STRING BEGIN FILE NOT THEN BREAK FOR OBJECT TO CASE FUNCTION OF TYPE CONST GOTO OR UNIT CONSTRUCTOR IF PACKED UNTIL CONTINUE IMPLEMENTATION PROCEDURE USES DESTRUCTOR IN PROGRAM VAR DIV INHERITED RECORD WHILE DO INLINE REPEAT WITH DOWNTO INTERFACE SET XOR

Directivele standard ale limbajului Turbo Pascal sunt următoarele: ABSOLUTE EXTERNAL FORWARD NEAR PUBLIC ASSEMBLER FAR INTERRUPT PRIVATE VIRTUAL

Page 38: MS-DOS, Pascal

Tipuri de date

Noţiunea de dată are sensul de „informaţie furnizată” unui program în scopul obţinerii anumitor rezultate. O caracteristică importantă a datelor este tipul de dată.

ShortInt Integer LongInt

Intreg Byte

Char Word

Prin tip de dată se înţelege o mulţime căreia i se poate atribui un nume. Valorile reprezintă constantele acelui tip. În Pascal există tipuri standard şi tipuri definite de utilizatori. Tipul stabileşte atât semnificaţia datelor cât şi restricţiile impuse în folosirea acestora.

Ordinal Boolean

38

În figura alăturată se prezintă toate tipurile de date ce pot fi utilizate în Turbo Pascal. Un program Turbo Pascal conţine date a căror valoare se modifică pe parcursul programului, denumite variabile şi date a căror valoare rămâne constantă denumite constante. Constantele limbajului Turbo Pascal sunt: numere întregi, reale, şiruri de caractere şi constante desemnate prin identificatori. Pentru ultima categorie de constante avem identificatori introduşi prin definiţii de constante, identificatorii constantelor unui tip enumerare, identificatorii standard true şi false, cuvântul cheie nil. După cum am văzut anterior, există şi date a căror valoare se modifică, variabilele. Este posibil ca în anumite momente o variabilă să nu conţină nici o valoare, caz în care este nedefinită. Variabila este o entitate careia i s-a asociat un identificator (nume) şi care poate lua valori corespunzătoare unui anumit tip. Asocierea identificator – tip se face printr-o declaraţie de variabilă. Instrucţiunea care modifică valoarea unei variabile este instrucţiunea de atribuire. Exemple: a :=i-1; prin această instrucţiune variabilei a declarată în prealabil i se atribuie ca valoare, valoarea variabilei i din care se scade o unitate. Operatorul de atribuire este combinaţia de caractere ” :=” . După cum se observă din figură există cinci tipuri de date:simplu, şir de caractere, referinţă, procedural şi structurat. Tipul simplu poate fi clasificat în ordinal şi real. Tipul ordinal cuprinde la rândul sau mai multe tipuri şi anume:întreg, caracter, boolean, enumerat, interval. Aceste tipuri se numesc ordinale(scalare) deoarece se caracterizează prin prezenţa funcţiilor:

Ord(x) – furnizează numărul de ordine al lui x în mulţimea respectivă, numărătoarea începând de la 0;

Pred(x) – furnizează predecesorul lui x (dacă există); Succ(x) - furnizează succesorul lui x (dacă există);

Tipul returnat de aceste funcţii este identic cu al lui x, iar in cazul lui ord este un număr întreg. Oricare două valori ordinale pot fi comparate între ele cu operatorii: =, <>(diferit), <, >, <=(mai mic sau egal), >=(mai mare sau egal).

Tip de dată

Şir

Referinţă

Procedural

Simplu

Structurat

Real

Comp

Real

Single

Double

Extended Tablou

Mulţime

Înregistrare

Fişier Obiect

Interval

Enumerat

Page 39: MS-DOS, Pascal

39

Tipuri întregi Există cinci tipuri întregi predefinite: shortint, integer, longint,byte şi word. Fiecare tip desemnează o submulţime a numerelor întregi, după cum urmează:

Tip Domeniu Format ShortInt -128..127 8 biţi cu semn Integer -32768..32767 16 biţi cu semn LongInt -2147483648..2147483647 32 biţi cu semn Byte 0..255 8 biţi fără semn Word 0..65535 16 biţi fără semn

Cu datele de tip întreg se pot realiza următoarele operaţii:

Operator Denumire Exemple + Adunare 2+3=5; -3+4=1 - Scădere 6-2=4; -6-7=-13 * Înmulţire 3*(-2)=-6; 3*5=15 / Împărţire 6/3=2; 8/4=2

Div Împărţire întreagă(câtul împărţirii) 7 div 2=3; 9 div 5=1 Mod Restul împărţirii întregi 7 mod 2=1; 9 mod 5=4 And Şi aritmetic(operator binar pe bit) 4(10) and 6(10)=0100(2)and0110(2)=0100(2)=4(10) Not Negaţie (operator binar pe bit) !1010=0101 Xor Sau exclusiv(operator binar pe bit) 4(10) xor 6(10)=0100(2)xor0110(2)=0010(2)=2(10) Shl Shift left (deplasare spre stânga) Shr Shift right (deplasare spre dreapta)

Asupra datelor de tip întreg operează şi o serie de funcţii:

Funcţie Denumire-semnificaţie Exemplu Ord Numărul de ordine Ord(x)=x Succ Succesor Succ(x)=x+1 Pred Predecesor Pred(x)=x-1 Odd Odd(x) – adevărat sau fals,după cum x este impar sau par Lo Lo(x) – octetul inferior al lui x, x trebuie să fie Integer sau Word, rezultatul este de tip Byte Hi Hi(x) – octetul superior al lui x, x trebuie să fie Integer sau Word, rezultatul este de tip Byte

Swap Swap(x) – schimbă între ei octeţii inferior şi superior, returnând numărul rezultat

Tipul caracter

Tipul caracter este denumit de identificatorul char, fiind vorba despre mulţimea tuturor caracterelor, adică toate cifrele, literele mari şi mici, precum şi caracterele #, !, @, $,%, ^, & *, (,), etc. Aceste caractere trebuie să fie cuprinse între apostrofuri. Tipul char este un tip scalar deoarece caracterele se pot număra. Există de fapt lista codurilor ASCII care conţine fiecare caracter şi numărul său de ordine. De exemplu avem: 32.. spaţiu, 33 ..!, 65..A, 66..B, 97..a,98..b, etc. Atunci avem: Ord(‘A’)=65; Ord(’b’)=98; Succ(’A’)=’B’; Pred(’b’)=’a’. Exista şi o funcţie care returnează caracterul ASCII având un anumit cod: Chr(65)=’A’.

Tipul boolean (logic)

Tipurile logice mai sunt numite şi booleene, denumire atribuită în memoria matematicianului George Boole(1815-1864), care apus bazele matematice ale studiului logicii. Există patru tipuri logice predefinite: Boolean, Bytebool, Wordbool şi Longbool. Valorile booleene sunt reprezentate de identificatoriide constante predefiniţi: True şi False. Aceste tipuri sunt tipuri ordinale şi avem: Ord(False)=0; Ord(True)=1; Succ(False)=True; Pred(True)=False; O variabilă de tip Boolean şi Bytebool ocupă un octet, pe când Wordbool ocupă doi octeţi, iar Longbool ocupă patru octeţi. Ultimele trei tipuri au fost introduse pentru compatibilitate cu alte limbaje şi mediul Windows. Spre deosebire de Boolean care poate lua valorile 0 şi 1, celelalte tipuri pot lua şi alte valori ordinale. Există următoarele operaţii logice ce se pot executa asupra datelor de tip boolean:

Conjuncţia logică : x and y Disjuncţia logică : x or y

Page 40: MS-DOS, Pascal

Negaţia logică: not x Disjuncţia logică exclusivă: x xor y

Tabelele de adevăr corespunzătoare celor 4 operaţii sunt:

40

And False True False False False True False True

Or False True False False True True True True

Not False True True False

Xor False True False False True True True False

Tipuri reale

Un tip real este reprezentat de o submulţime a mulţimii numerelor reale, care poate fi reprezentată

în calculator. În Turbo Pascal avem următoarele tipuri reale: Real, Single, Double, Extended, Comp.

Tip Domeniul valorilor absolute

Format Număr de cifre semnificative

Real 2.e-39 ..1.e38 6 Octeţi 11-12 Single 1.5e-45..3.4e38 4 Octeţi 7-8 Double 5.0e-324..1.7e308 8 Octeţi 15-16 Extended 3.4e-4932..1.1e4932 10 Octeţi 19-20 Comp -263+1..263-1 8 Octeţi 19-20

Asupra acestor numere reale se pot executa operaţiile de adunare, scădere, înmulţire, împărţire. Nu

exista un operator special pentru ridicarea la o putere diferită de 2, pentru acest lucru folosindu-se funcţiile Exp şi Ln. Funcţiile care pot fi aplicate datelor de tip real şi care au ca rezultat numere reale sunt prezentate în tabelul următor:

Funcţia Tip argument R/I - Rezultat de tip R/I

Semnificaţie

Abs R - R Valoarea absolută Sqr R – R Pătratul argumentului Sin R/I – R Sinusul valorii argumentului exprimat în radiani Cos R/I – R Cosinusul valorii argumentului exprimat în radiani Arctan R/I – R Unghiul exprimat în radiani, a carui tangentă este x Ln R /I– R Logaritmul natural al argumentului Exp R/I – R Exponenţiala argumentului; ex, e=2,71828182 Sqrt R/I – R Radicalul din x Int R – R Partea întreagă a lui x Trunc R – I Valoarea trunchiată la un număr tip LongInt a lui x Round R – I Cel mai apropiat întreg pentru x, de tip LongInt Frac R/I – I Partea fracţionară a argumentului

Pe măsura introducerii celorlalte tipuri în cadrul problemelor acestea vor fi în prealabil prezentate.

Citirea şi afişarea datelor

Proceduri de citire a datelor ReadLn(var 1, var 2,…,var n) - citeşte valorile variabilelor var1, …, var n, introduse de la tastatură. Variabilele

pot fi de orice tip, mai puţin Boolean şi enumerare. Introducerea mai multor variabile se poate face dacă acestea sunt separate prin spaţii sau Enter. La sfârşit trebuie tastat Enter. Procedura ReadLn va citi şi sfârşitul de linie(caracterul Enter şi va trece pe rand nou).

Read(var 1, var 2,…,var n) – este identică cu ReadLn, doar că nu citeşte sfârşitul de linie. Dacă variabilele au avut alte valori înaintea apelului procedurii de citire acestea se pierd. Valorile nou citite se

păstrează neschimbate până la o operaţie de atribuire sau recitire.

Page 41: MS-DOS, Pascal

41

Proceduri de afişare a datelor

Write(e1, e2,…,en) – evaluează şi apoi afişează valorile expresiilor e1, …, en. Expresiile pot fi

inclusiv de tip Boolean, caz în care se va afişa unul dintre cei doi identificatori True sau False,

dar nu de tip enumerare. După afişarea valorilor unor expresii acestea nu se pierd şi nu se

schimbă.

WriteLn(e1, e2,…,en) – face acelaşi lucru, dar la sfârşitul afişării mută cursorul pe o linie nouă.

În lista argumentelor procedurilor de afişare Write şi WriteLn, expresiile pot fi urmate şi de

formate de afişare, astfel: e:m:n unde:

e este expresia de afişat, iar m, n sunt numere întregi m>=n;

m – reprezintă numărul total de poziţii utilizate pentru reprezentarea numărului;

n – reprezintă numărul de poziţii de la partea zecimală;

m-n-1 poziţii partea întreagă, deoarece o poziţie este ocupată de separatorul zecimal.

Dacă afişarea necesită mai puţin de m poziţii, afişarea se face prin completarea spaţiilor libere de

la început prin caracterul spaţiu. Dacă se doreşte ca numărul să fie lipit de sfârşitul mesajului fără

eventuale spaţii înaintea formatului de afişare se pune semnul „-”.

De regulă în programele Turbo Pascal când este necesară introducerea unor date se foloseşte

introducerea conversaţională, adică înaintea introducerii de date se va afişa un mesaj ajutător.

O secvenţă de mai multe instrucţiuni oarecare ale unui program, despărţit prin punct şi virgulă şi

încadrate între begin şi end formează o instrucţiune compusă

Page 42: MS-DOS, Pascal

INTRODUCERE IN PROGRAMARE CU AJUTORUL PROBLEMELOR REZOLVATE

PROBLEMA NR. 1 Fiind considerate trei numere întregi A,B,C, să se calculeze minimul dintre acestea. REZOLVARE

START

42

Descrierea algoritmului în Pseudocod /Calculul minimului din 3 nr. întregi/ INTEGER a,b,c,min READ a,b,c IF a<b THEN min←a ELSE min←b ENDIF IF min>c THEN min←c ENDIF WRITE min STOP END

READ A,B,C

Da Nu A<B

MIN←A MIN←B

Nu

Descrierea algoritmului în Turbo Pascal PROGRAM minim; VAR a,b,c,min:INTEGER; BEGIN WRITE('A=');READLN(a); WRITE('B=');READLN(b); WRITE('C=');READLN(c); IF a>b THEN min:=a ELSE min:=b; IF min>c THEN min:=c; WRITELN('Minim(',a,',', b,',', c,')=',min); READLN END.

Indicaţie: Pentru rezolvarea acestei probleme se vor folosi instrucţiunile care modelează structurile IF THEN ELSE şi IF THEN. Se citesc cele trei numere prin intermediul a trei variabile. Se compară iniţial primele două variabile, iar minimul se depune într-o variabilă min, după care se va compara valoarea acestei variabile cu cea de-a treia variabilă. In final se va afişa valoarea minimă.

C<MIN Da

MIN←C

WRITE MIN

STOP

Fig. 7.1 – Minim din 3 nr. întregi

Page 43: MS-DOS, Pascal

PROBLEMA NR.2 Să se ordoneze crescător 3 numere reale A,B,C. REZOLVARE Descrierea algoritmului în Pseudocod

/Ordonarea crescătoare a 3 nr. reale/ REAL a,b,c,aux READ a,b,c IF a > b THEN aux←a a←b b←aux ENDIF IF a > c THEN aux←a a←c c←aux ENDIF IF b >c THEN aux←b b←c c←aux ENDIF WRITE a, b, c STOP END

START

READ A,B,C Da Nu

A > B

43

Fig. 7.2 – Ordonarea crescătoare

AUX←A A←B B←AUX

WRITE A,B,C

A > C

STOP

AUX←A A←C C←AUX

B > C

AUX←B B←C C←AUX

Descrierea algoritmului în Turbo Pascal

PROGRAM ordonare; VAR a,b,c,aux:REAL; BEGIN

WRITE('A=');READLN(a); WRITE('B=');READLN(b); WRITE('C=');READLN(c);

IF a>b THEN Indicaţie: Pentru rezolvarea problemei se foloseşte doar structura IF ..THEN. După ce se citesc cele trei valori ale variabilelor se testează valoarea primei variabile dacă este mai mare decât valoarea variabilei a doua. In caz afirmativ se schimbă între ele valorile celor două variabile. La fel se procedează apoi si pentru variabilele 1 cu 3 şi 2 cu 3. Se scriu valorile celor trei variabile ordonate crescător.

BEGIN aux:=a; a:=b;

b:=aux; END;

IF a>c THEN

BEGIN aux:=a; a:=c;

c:=aux; END; IF b>c THEN

BEGIN aux:=b; b:=c;

c:=aux; END;

WRITELN('Numerele sortate'); WRITE(a:6:2,b:6:2,c:6:2); READLN

END.

Page 44: MS-DOS, Pascal

44

PROBLEMA NR. 3 Să se rezolve ecuaţia de gradul II. REZOLVARE

Descrierea algoritmului în Pseudocod /Rezolvarea ecuaţiei de gradul II/ REAL a,b,c,d,x1,x2 READ a,b,c IF a=0 THEN IF b=0 THEN IF c=0 THEN WRITE(Nedeterminare) ELSE WRITE(Imposibilitate) ENDIF ELSE WRITE(Ec. Grad I) x1←-c/b WRITE(x1) ENDIF ELSE d←b*b-4*a*c

IF d>0 THEN X1=(-b+d1/2)/(2*a) X2=(-b-d1/2)/(2*a) WRITE(Solutiile x1,x2) ELSE IF d=0 THEN X1=-b/(2*a) WRITE(Soluţie dublă x1) ELSE X1=-b/(2*a)+i(d1/2/(2*a)) X2=-b/(2*a)-i(d1/2/(2*a)) WRITE (Solutii complex conjugate) WRITE(x1,x2) ENDIF ENDIF ENDIF STOP END

WRITE A,B,C

START

WRITE Nedeterminare

A=0

B=0

C=0

WRITE Imposibilitate

WRITE Ecuatie Gradul I

X← -C/B

WRITE X

D←B*B-4*A*C

X←-B/(2*A)

D>0

X1←(-B+D1/2)/(2*A) X2←(-B-D1/2)/(2*A)

WRITE X1,X2

WRITE X WRITE Sol. complexe

D=0

STOP

Da

Da

Da Da

Da

Nu

Nu

Nu Nu

Nu

Fig. 7.3 – Rezolvarea ecuaţiei de gradul II

Page 45: MS-DOS, Pascal

45

Descriere Algoritm în Turbo Pascal PROGRAM ecuatie_grad_II; VAR a,b,c,x1,x2,d:REAL; BEGIN WRITE('A=');READLN(a); WRITE('B=');READLN(b); WRITE('C=');READLN(c); IF a=0 THEN IF b=0 THEN IF c=0 THEN WRITELN('Ecuatie nedeterminata') ELSE WRITELN('Ecuatie imposibila') ELSE BEGIN WRITELN('Ecuatie grad I'); x1:=-c/b; WRITELN('Solutia x=',x1:6:2); END ELSE BEGIN d:=SQR(b)-4*a*c; IF d>0 THEN BEGIN x1:=(-b+SQRT(d))/(2*a); x2:=(-b-SQRT(d))/(2*a); WRITELN('Solutia x1=',x1:6:2); WRITELN('Solutia x2=',x2:6:2); END ELSE IF d=0 THEN BEGIN WRITELN('Solutii reale egale'); x1:=-b/(2*a); WRITELN('Solutiile x1=x2=',x1:6:2); END ELSE BEGIN WRITELN('Solutii complex conjugate'); WRITE('Solutia x1=',-b/(2*a):6:2); WRITELN('+',(-b+SQRT(-d))/(2*a):6:2 ,'i'); WRITE('Solutia x2=',-b/(2*a):6:2); WRITELN('-',(-b+SQRT(-d)) /(2*a):6:2 ,'i'); END; END; READLN END.

Indicaţie: Pentru rezolvarea ecuaţiei de

gradul II se folosesc structurile IF THEN şi

IF...THEN…ELSE. După ce se citesc

coeficienţii ecuaţiei se trece la analiza

cazurilor posibile. Dacă toţi cei trei

coeficienţi sunt egali cu zero suntem în cazul

unei nedeterminări . Dacă doar termenul liber

este diferit de zero suntem într-un caz de

imposibilitate. Dacă şi coeficientul lui x este

diferit de zero avem de rezolvat o ecuaţie de

gradul I: bx+c=0 =>x=-c/b. Dacă şi

coeficientul lui x2 este diferit de zero avem o

ecuaţie de gradul doi, în rezolvarea căreia

intervine calculul determinantului şi apoi

discuţia în funcţia de valoarea acestuia: dacă

este mai mare ca zero avem două rădăcini

reale şi distincte, dacă este zero avem o

rădăcină dublă, iar dacă este mai mic decât

zero avem două rădăcini complex conjugate.

Page 46: MS-DOS, Pascal

PROBLEMA NR. 4 Să se stabilească câte zile are orice luna din orice an. REZOLVARE

46

ENDIF ENDCASE WRITE zi STOP END

Descrierea algoritmului în Pseudocod

/Zi din luna si an/ INTEGER an, luna, zi READ an, luna CASE luna OF 1,3,5,7,8,10,12:zi←31 4,6,9,11:zi←30 2: IF INT(an/4)*4=an THEN zi←29 ELSE zi←28

LUNA=1 V =3 V=5 V=7 V=8 V=10 V=12

READ AN, LUNA

ZI←31 LUNA=4 V =6 V=9 V=11

ZI←30 [AN/4]*4=AN

ZI←29 ZI←28

START

Da

Da

Da Nu

Nu

Nu

WRITE ZI

STOP

Fig. 4 – Calculul numărului de zile al oricarei luni din orice an

Descriere algoritm în Turbo Pascal PROGRAM zilunaan; VAR zi, luna, an:INTEGER; BEGIN WRITE('An=');READLN(an); WRITE('Luna=');READLN(luna); CASE luna OF 1,3,5,7,8,10,12:zi:=31; 4,6,9,11:zi:=30; 2:IF INT(an/4)*4=an THEN zi:=29 ELSE zi:=28; END; WRITE('Luna ',luna,' din anul' ,an); WRITELN(' are ',zi,' zile'); READLN END.

Indicaţie: In rezolvarea acestei

probleme intervine o selecţie multiplă în

funcţie de valoarea variabilei luna. Dacă

luna este ianuarie, martie, mai, iulie,

august, octombrie şi decembrie avem 31

de zile, dacă este aprilie, iunie,

septembrie, noiembrie avem 30 de zile

sau daca este februarie în funcţie de tipul

anului avem 29 dacă anul este bisect sau

28 dacă nu este.

Page 47: MS-DOS, Pascal

PROBLEMA NR. 5 Să se calculeze valoarea expresiei E definită astfel:

⎪⎪⎪⎪

⎪⎪⎪⎪

++

=++

=

=++

=

restinCBA

n

CBA

nCBA

nCBA

E

,

3,111

32,)**(

1,3

3 2

Descrierea algoritmului în Pseudocod /Valoare expresie/ INTEGER n,a,b, c READ n, a, b, c CASE n OF 1: e ← (a+b+c)/3 2: e ← Exp(2/3Ln(abc)) 3: e ←3/(1/a+1/b+1/c) ELSE e ←a+b+c ENDCASE WRITE e STOP END

REZOLVARE

START

CITESTE N,A,B,C

N=1

47

E←(A+B+C)/3 N=2

N=3 E←Exp(2/3Ln(A*B*C))

E←3/(1/A+1/B+1/C) E←A+B+C

SCRIE E

START

DA

DA

DA

NU

NU

NU

Fig. 7.5 – Calculul expresiei

Descrierea algoritmului în Turbo Pascal Indicaţie: Pentru rezolvarea problemei se foloseşte selecţia multiplă- CASE ...OF. Se citesc valorile variabilelor n,a,b,c. în funcţie de valoarea variabilei n se selectează una dintre cele patru cazuri.

PROGRAM expresie; VAR n:INTEGER; e,a,b,c:REAL; BEGIN WRITE('n=');READLN(n); WRITE('a=');READLN(a); WRITE('b=');READLN(b); WRITE('c=');READLN(c); CASE n OF 1: e:=(a+b+c)/3; 2: e:=EXP(2/3*LN(a*b*c)); 3: e:=3/(1/a+1/b+1/c); ELSE e:=a+b+c; END; WRITE('Valoarea expresiei: '); WRITELN(e:-10:3); READLN; END.

Page 48: MS-DOS, Pascal

PROBLEMA NR. 6 Să se determine câtul şi restul împărţirii întregi a două numere întregi A şi B, B ≠ 0, prin scăderi repetate.. REZOLVARE

48

Descrierea algoritmului în Pseudocod /Câtul şi restul împărţirii a 2 nr. întregi/ INTEGER a, b, q REAL a,b q ← 0 WHILE a >= b a ← a – b q ← q + 1 REPEAT WRITE q,a STOP END

START

READ A,B

Q←0

A>B

A←A-B Q←Q+1

Nu Da

WRITE Q,A

STOP

Fig.7.6 – Câtul şi restul împărţirii a 2 numere întregi

Descrierea algoritmului în Turbo Pascal Indicaţie: Pentru rezolvarea problemei se foloseşte structura repetitivă WHILE-DO. Se citeşte valoarea lui n. Se salvează valoarea iniţială a celor două numere. Se iniţializează câtul q cu valoarea 0. Atâta timp cât primul numărul este mai mare decât valoarea celui de-al doilea număr se scade din acesta valoarea celui de-al doilea număr, iar câtul q se măreşte cu o unitate. Când condiţia nu mai este îndeplinită se scriu câtul q şi restul a.

PROGRAM catrest; VAR a,a1,b,q:INTEGER; BEGIN WRITE('A=');READLN(a); WRITE('B=');READLN(b); a1:=a; q:=0; WHILE a>=b DO BEGIN a:=a-b; q:=q+1; END; WRITE('Prin impartirea lui ',a1,' la '); WRITELN(b,' se obtine catul ',q,' si restul ',a); READLN END.

Page 49: MS-DOS, Pascal

PROBLEMA NR. 7 Să se calculeze suma cifrelor unui număr întreg. REZOLVARE

START Descrierea algoritmului în Pseudocod /Suma cifrelor unui numar/

49

INTEGER n,s READ N READ n S←0 WHILE n<>0

S←0 S←s+ n MOD 10 N←n DIV 10 REPEAT WRITE s STOP END N<>0

S←S+N MOD 10 N←N DIV 10

Da

WRITE S

Nu

STOP

Fig. 7.7 – Suma cifrelor unui număr

Indicaţie: Pentru rezolvarea problemei se foloseşte structura repetitivă WHILE-DO. Se citeşte valoarea lui n. Se iniţializează suma cu zero. Atâta timp cât numărul este mai mare ca zero se adaugă la sumă ultima cifră a numărului rezultată ca restul împărţirii întregi a numărului n la baza de numeraţie. Noua valoare a numărului n este numărul fără ultima cifră, valoare ce rezultă prin împărţirea exactă a numărului n la baza de numeraţie. Se scrie suma cifrelor.

Descrierea algoritmului în Pascal PROGRAM suma_cifrelor; VAR n,s:LONGINT; BEGIN WRITE('N=');READLN(n); s:=0; WHILE n>0 DO BEGIN s:=s+n MOD 10; n:=n DIV 10; END; WRITELN('Suma cifrelor:',s:4); READLN END.

Page 50: MS-DOS, Pascal

PROBLEMA NR. 8 Să se calculeze rădăcina pătrată a unui număr pozitiv A, conform formulei: )

Xa(X

21X

1n1nn

−− += .

Pentru radical de ordinul k formula devine: ).X

aX*1)-((kk1X 1-k

1-n1nn += −

REZOLVARE

START Descrierea algoritmului in Pseudocod

50

Da Nu

Fig. 7.8 – Radical dintr-un număr pozitiv A

/Radical dintr-un numar pozitiv/ READ A, EPS INTEGER n

REAL a,x1,x0 READ a, eps x1←1 X1←1 DO x0←x1 x1←(x0+a/x0)/2 UNTIL ABS(x1-x0)<eps WRITE x1 STOP END

X0←X1 X1←(X0-A/X0)/2

|X1-X0|<EPS

WRITE X1

STOP

Descrierea algoritmului în Turbo Pascal Indicaţie: Pentru rezolvarea problemei se poate folosi structura repetitivă Do-Until.Se citeşte a - numărul din care se doreşte a se extrage radicalul şi eps- precizia de calcul a radăcini pătrate. Se execută în mod repetat setul de instrucţiuni până când valoarea absolută a diferenţei dintre aproximaţia iniţială x0 şi cea calculată conform formulei x1 este mai mică decât eps. Se scrie ultima aproximaţie calculată.

PROGRAM radical; CONST eps=1e-6; VAR x0,x1,a:REAL; BEGIN WRITE('A>0 =');READLN(a); x1:=a/2; REPEAT x0:=x1; x1:=(x0+a/x0)/2; UNTIL ABS(x1-x0)<eps; WRITELN('Radical din ',a:10:6,' este ',x1:10:6); READLN END.

Page 51: MS-DOS, Pascal

PROBLEMA NR. 9 Să se determine cel mai mare divizor comun şi cel mai mic multiplu comun a două numere întregi A şi B. REZOLVARE

START Descrierea algoritmului în Pseudocod /CMMDC şi CMMDC/

READ A, B INTEGER a,b,c,d,dc REAL mc READ a,b

C←A c ← a D←B d ← b

REPEAT IF a>b THEN a ←a – b

51

B←B - A

A > B

A←A - B

A=B

ELSE b ← b – a ENDIF Da Nu UNTIL a=b dc←a mc←(c*d)/dc WRITE dc, mc STOP END

Nu Da

DC←A MC←(C*D)/DC

WRITE DC,MC

STOP

Fig. 7.9 – Calculul CMMDC şi CMMMC a 2

Descrierea algoritmului în Turbo Pascal PROGRAM cmmdc_cmmmc; VAR a,c,b,d,dc:INTEGER; mc:REAL; BEGIN WRITE('A=');READLN(a); WRITE('B=');READLN(b); c:=a; d:=b; REPEAT IF a>b THEN a:=a-b ELSE b:=b-a; UNTIL a=b; dc:=a; mc:=(c*d)/dc; WRITELN('C.M.M.D.C(',c,',',d,')=',dc:4); WRITELN('C.M.M.M.C(',c,',',d,')=',mc:4:0); READLN END.

Indicaţie: Pentru rezolvarea problemei se va folosi structura repetitivă Do-Until. Se citesc cele două numere. Se salvează valorile lor în două variabile de rezervă. Se execută în mod repetat setul de instrucţiuni : dacă este mai mare ca b atunci se scade din valoarea variabilei a valoarea variabilei b, altfel se scade din valoarea variabilei b valoarea variabilei a; până când cele două numere devin egale, moment în care s-a descoperit cel mai mare divizor comun. Apoi pe baza formulei se calculează şi cel mai mic multiplu comun folosindu-ne de valorile iniţiale ale celor două numere salvate în variabilele de rezervă.

Page 52: MS-DOS, Pascal

PROBLEMA NR. 10 Să se calculeze suma şi produsul primelor n numere naturale. REZOLVARE

START

CITESTE n

S←0 P←1

I←1

S←S+I P←P*I

I←I+1

I>N

SCRIE S,P

STOP

NU DA

Fig. 10 – Suma si produsul primelor n numere naturale

Descrierea algoritmului în Pseudocod / Suma si produsul primelor numere naturale/ INTEGER n,i LONGINT s,p READ n S←0 P←1 FOR i=1,n S←S+i P←P*i REPEAT WRITE S,P STOP END

Descrierea algoritmului în Turbo Pascal PROGRAM suma_si_produs; VAR n,i,s,p:LONGINT; BEGIN WRITE('N=');READLN(n); s:=0; p:=1; FOR i:=1 TO n DO BEGIN s:=s+i; p:=p*i; END; WRITELN('Suma :',s:-14); WRITELN('Produs :',p:-14); READLN END.

Indicaţie: Pentru îndeplinirea cerinţelor din enunţul problemei se va folosi structura repetitivă cu număr finit de paşi For-Do.

Se citeşte valoarea variabilei n, care va indica numărul de paşi. Se iniţializează variabila s care va calcula suma cu zero şi variabila p, care va memora produsul cu unu. Apoi pentru toate valorile variabilei contor i mergând de la 1 şi până la n se va aduna la valoarea sumei valoarea lui i, iar produsul se va multiplica cu valoarea lui i. Se tipăresc s şi p.

52

Page 53: MS-DOS, Pascal

53

BIBLIOGRAFIE

1. Cristea V., şi colectiv - Tehnici de programare, Ed. Teora, Bucureşti, 1994

2. Kovacs S. – Turbo Pascal 6.0 ghid de utilizare, MicroInformatica, Cluj Napoca, 1992

3. Mocanu M, şi colectiv - 333 probleme de programare, Ed. Teora, Bucureşti, 1993

4. Miriţă.,I. Costinaş,S. Edelhauser, C. Birotică. Editura Focus 2001. Petroşani

5. Munteanu F. – Programarea calculatoarelor, Ed. Didactică şi Pedagogică, Bucureşti, 1994

6. Glenn, W. Microsoft Windows XP în imagini. Editura Teora 2003 Bucureşti

7. Panã, A. s .a. - Birotica. Editura All. Bucureşti 1994

8. Sav S. – Calculatoare, sisteme de operare si retele de calculatoare, Ed. Soft Computer,Petrosani, 2001

9. Vasiu L. şi colectiv – Turbo Pascal 6.0 programe, MicroInformatica, Cluj Napoca, 1994

10. Zăvoianu C. – Algoritmi şi programare în Turbo Pascal, Ed. Soft Computer, Petroşani, 2000