Professional Documents
Culture Documents
DOC-20190413-WA0000
DOC-20190413-WA0000
DOC-20190413-WA0000
Unit 6
Programming Languages
1
Cocu Iulia Veronica Unit 6 – Programming languages
2
5 Cocu Iulia Veronica Unit 6 – Programming languages
3
Cocu Iulia Veronica Unit 6 – Programming languages
80
4
Cocu Iulia Veronica Unit 6 – Programming languages
I.
a) Give synonyms for the following words from the text:
Specifications (l. 2); traits (l. 3); chained (l.21); embedded (l. 27); query (l. 33); converted
85 (l. 43); spectrum (l. 64); emerged (l. 68); mainstream (l. 74)
1. Hexadecimal figure
95 2. Binary mathematics
3. Floating point arithmetic
4. Double precision arithmetic
5. Boolean truth values
100
III. Match the following programming languages with their definition:
110
10 5
Cocu Iulia Veronica Unit 6 – Programming languages
b) Complete the following sentences (you may use more than one word per blank space):
1. New ………… are released every time there is an improvement on the hardware side.
2. …………. are languages which are close to human language.
3. ………… such as Excel 4.0 or Multiplan are some of the most widely-used …………
115 in the computer field.
4. The translation of a program into machine code is carried out either via a ………… or
an ………….
5. Before running a program, the user has to ensure that it is …………-free.
120
IV. Match the following programming languages with their definition:
6
Cocu Iulia Veronica Unit 6 – Programming languages
and character string data as well as bit values; it also provides facilities for structures and
multi-dimensional arrays
g. it is derived from BASIC and enables the rapid application development of graphical
user interface applications, access to databases using Data Access Objects, Remote Data
145 Objects or ActiveX controls and objects
h. a set of rules for encoding documents in machine-readable form; its design goals
emphasize simplicity, generality and usability over the Internet
i. a scripting language developed by Adobe, used primarily for the development of
websites and software targeting the Adobe Flash Player platform
150 j. short for Laboratory Virtual Instrumentation Engineering Workbench; it is also referred
to as G and used for data acquisition, instrument control and industrial automation
k. a command-line interpreter or shell that provides a traditional user interface for the
Unix operating system and for Unix-like systems
l. designed by Ericsson to support distributed, fault-tolerant, soft-real-time, non-stop
155 applications
m. one of the earliest programming languages; it pioneered many ideas in computer
science, including tree data structures, automatic storage management, dynamic typing
and the self-hosting compiler; linked lists are one of this programming language’s major
data structures and its source code is itself made up of lists
160 n. a statically typed, free-form, multi-paradigm, compiled, general-purpose programming
language; this language began as enhancements to C, first adding classes, then virtual
functions, operator overloading, multiple inheritance, templates, and exception handling
among other features
o. it allows matrix manipulations, plotting of functions and data, implementation of
165 algorithms, creation of user interfaces and interfacing with programs written in other
languages, including C, C++ and Fortran.
170
7
15 Cocu Iulia Veronica Unit 6 – Programming languages
8
Cocu Iulia Veronica Unit 6 – Programming languages
9
Cocu Iulia Veronica Unit 6 – Programming languages
240 b) „Nivelul”unui limbaj este apreciat prin poziţia pe care o ocupă pe scara constituită de
limbajul recunoscut de microprocesor (limbaj maşină) şi limbajul natural al
programatorului (limba română, limba engleză etc.).
Un limbaj de nivel scăzut este foarte apropiat de maşină, el manipulează cu
elemente de nivel hardware, fizic, cum ar fi: registru, microprocesor, locaţie de memorie,
245 port de intrare/ieşire etc.
Un limbaj de nivel înalt sau foarte înalt manipulează cu concepte apropiate de
limbajul natural, concepte de nivel logic, cum ar fi: colecţie de date, nume de operaţie
(sort, writeln, open), variabile, constante (asemănătoare ca înţeles cu cele din
matematică).
250 Cu ajutorul unui limbaj de nivel înalt programatorul se face mult mai uşor înţeles
de către calculator . Uneori o singură linie de program scrisă cu un astfel de limbaj poate
echivala cu sute de linii de program scrise în limbaj maşină. Deci din punct de vedere al
reducerii timpului de realizare al unui program şi al siguranţei în funcţionare (absenţa
erorilor de programare) este de preferat un limbaj de nivel cât mai ridicat (înalt sau foarte
255 înalt). În schimb, pe măsură ce limbajul are un nivel mai ridicat execuţia programului
conceput cu ajutorul său va fi mai lentă, decât a unui program ce realizează aceleaşi
operaţii dar este scris în limbaj de asamblare.
O altă diferenţă esenţială între cele două tipuri de limbaje o reprezintă
portabilitatea, adică posibilitatea transferării programelor pe un alt tip de maşină decât
260 cea pe care au fost construite. Din acest punct de vedere limbajul de asamblare este
neportabil deoarece el este specific microprocesorului. Programele realizate pe un tip de
maşină trebuie rescrise integral pentru noul tip de maşină, folosind un nou set de
20 10
Cocu Iulia Veronica Unit 6 – Programming languages
instrucţiuni – care, de obicei, diferă foarte mult. Lucrurile stau altfel cu programele
concepute cu ajutorul unui limbaj de nivel înalt, deoarece acestea sunt detaşate de
265 maşină. Între un astfel de program şi calculator se interpune compilatorul (sau
interpretorul) care rezolvă corect transformarea fişierului-sursă în fişier-executabil.
Limbaje procedurale – neprocedurale
Cele două tipuri de limbaje, procedurale şi neprocedurale, se diferenţiază prin
nivelul de organizare (structurare) a unui program . Limbajele neprocedurale sunt
270 concepute pentru a gândi un program la nivel de instrucţiune, pe când cele procedurale,
obligă programatorul să conceapă programe la nivel de bloc. Într-un limbaj procedural
(numit şi limbaj structurat), programele sunt scrise instrucţiune cu instrucţiune, dar ele
sunt organizate logic în blocuri (grupuri de instrucţiuni) ce realizează o acţiune bine
determinată. În general un bloc are un punct de intrare şi un punct de ieşire – nu mai
275 multe.
Un limbaj procedural oferă posibilitatea utilizării unui nivel ridicat de concepere a
unui program şi duce la realizarea de programe coerente şi protejate la erori. Prin
contrast, limbajele neprocedurale nu favorizează programatorul în a se desprinde de
nivelul „instrucţiune” şi duc deseori la programe greu de controlat – mai ales în cazul
280 programelor de dimensiuni mari.
Limbajele neprocedurale sunt încă preferate de unii utilizatori datorită timpului
foarte scurt cât decurge învăţarea şi utilizarea lor.
Limbaje orientate
Din punctul de vedere al aplicabilităţii unui limbaj, limbajele pot fi orientate pe o
285 anumită problemă sau concepute pentru soluţionarea oricărui tip de problemă – limbaje
de uz general sau altfel spus, neorientate pe o problemă.
Limbajele orientate prezintă un grad înalt de specificitate pe când un limbaj
neorientat reprezintă un cadru general ce permite introducerea de către utilizator a
conceptelor şi prelucrărilor dorite.
290 Deci, diferenţa esenţială dintre cele două tipuri de limbaje o constituie nivelul
conceptual definit. Cele specializate posedă deja integral suportul necesar şi permit
programatorului să se concentreze la ansamblul problemei, pe când cele nespecializate
lasă în sarcina programatorului manevrarea nivelelor inferioare ale problemei.
11
Cocu Iulia Veronica Unit 6 – Programming languages
Limbaje concurente
295 Un limbaj concurent permite definirea de procese (prelucrări) paralele, execuţia sa
fiind ramificată la un anumit moment de timp. Prin contrast, limbajele neconcurente
(majoritatea limbajelor) au o desfăşurare liniară, fiind activ un singur proces la un
moment dat. Procesele concurente presupun în mod obligatoriu un sistem multi-tasking
ce poate gestiona mai multe „sarcini” la un moment dat.
300 Limbaje de nivel scăzut
Această categorie de limbaje are un reprezentant autoritar şi anume: limbajul de
asamblare. Diferenţierile care se pot face pentru limbajele de nivel scăzut sunt
următoarele:
a) – după tipul de maşină ;
305 Regulile respectate de versiunile limbajului de asamblare sunt:
- o nouă versiune o include complet pe cea anterioară ,
- versiunea nouă oferă funcţii suplimentare şi le realizează pe cele vechi mai rapid .
b) – după mediul de programare oferit.
Aspectul unui limbaj poate fi schimbat radical de mediul de programare oferit.
310 Pentru limbajul de asamblare există mai multe implementări disponibile, începând cu
pachete ce operează în mod linie şi culminând cu medii integrate în care toate operaţiile
se pot declanşa de la un acelaşi pupitru de comandă.
Nu sunt luate în considerare decât aceste medii integrate( denumite generic medii
Turbo), dintre care se detaşează Turbo Asamblorul firmei Borland TASM.
12
25 Cocu Iulia Veronica Unit 6 – Programming languages
13
Cocu Iulia Veronica Unit 6 – Programming languages
Plurisyllabic adjectives
Positive Comparative Superlative
more + adjective the most + adjective
beautiful more beautiful the most beautiful
difficult more difficult the most difficult
Some adjectives are irregular. Such adjectives are the following:
Positive Comparative Superlative
good better the best
bad worse the worst
ill worse the worst
much more the most
many more the most
little less (lesser) the least
Within the irregular adjectives there are some that have double forms of
345 comparison:
OLD - older – the oldest (for people and things)
- elder (used only attributively) – the eldest (for the members of the
same family)
e.g.: Our house is older than theirs.
350 My elder brother is a singer.
14
Cocu Iulia Veronica Unit 6 – Programming languages
EXERCISES
360
30 15
Cocu Iulia Veronica Unit 6 – Programming languages
IV. Fill in with the correct adjectives. There are six pairs of adjectives that
410 you must guess so that you fill in the blanks correctly:
1. He works very hard as a computer programmer. It’s not ………… that he’s always
tired.
2. I’ve got nothing to do. I’m ………….
3. The room hadn’t been cleaned for ages. It was really ………….
415 4. I seldom visit art galleries. I’m not particularly ………… in art.
5. The lecture was …………. I fell asleep.
6. The teacher’s explanation was …………. Most of the students didn’t understand it.
7. I’ve been working very hard all day and now I’m ………….
16
Cocu Iulia Veronica Unit 6 – Programming languages
8. I was very ………… to find out that Joan had passed the exam because she had hardly
420 studied anything.
9. She is a very difficult person to follow because she talks a lot. She is a very …………
person.
10. I was totally ………… when I heard the truth about Michael.
11. Julia is a very ………… person. She knows a lot, she has traveled a lot and she has
425 done a lot of different things.
12. I didn’t understand anything out of the lecture on XML. I am really ………… about
this topic.
17
35 Cocu Iulia Veronica Unit 6 – Programming languages
450 Lyric
Lyrical
a. ………… poetry reading can help you find the music of everyday language.
b. His ………… approach to scientific writing helped to popularize the subject.
18