Sie sind auf Seite 1von 13

Introduction to programming


Dr.Narayana Swamy Ramaiah

Assoc.Prof, Dept of Electrical and
Computer Engineering,
Arba Minch University
Introduction to programming language
• “Any notation for the description of algorithm and data
structures may be termed a programming language”

• Different levels of programming language

– To describe the solution of a problem to a computer , we need
to know a set of commands that the computer can understand
and execute. Thus there is a need of language that the
computer can understand.
– There are different levels of programming languages as follows.
• Machine language
• Assembly language
• High level language
• 4GL Language
• Machine level language
– Programs are written in 0’s and 1’s
• It is very difficult to work it
• Every different type of computer has its own set of
• Assembly level language
– In assembly level language names and symbols are
used. As a compare to machine language it is easy to
write the programs in assembly language. Assembler
is used to convert programs from assembly language
to machine language.
• High level language
– High level language has replaced machine and
assembly level language in all areas of programming
because they provide benefits like.
• Readable familiar notations
• Machine independences
• Availability of program libraries
• Consistency checks during implementation that can detect
Why Study Programming Languages
• Six primary reasons
– To improve your ability to develop effective
• many programming language provide features, which
when used properly by programmer gives benefits. But
when used improperly waste large amount of computer
time or lead the programmer into time consuming
logical errors. Even a programmer who has used a
language for years may not understand all of its
• Example recursion
• To improve your use of your existing
programming language.
– By understanding how features in your language are
implemented, you greatly increase your ability to
write efficient programs.
– Example arrays, strings, lists or records are created
allows you to build more efficient programs consisting
of such components.
• To increase your vocabulary of useful
programming constructs.
– Studying the constructs provided by a wide range of
languages, a programmer increases his programming
– Example co routine feature implemented in c or
• To allow a better choice of programming language.
– A knowledge of a variety of languages may allow the
choice of just the right language for a particular project,
there by reducing the required coding effort.
• Example applications requiring numerical calculations can be
easily designed in languages like c, fortran or ada.
• To make it easier to learn a new language
– A through understanding and knowledge of a variety of
programming language constructs and implementation
techniques allows the programmer to learn a new
programming language more easily when the need arises.
• To make it easier to design a new language.
– the aspect of program design is often simplified if the
programmer is familiar with a variety of constructs and
implementation methods from ordinary programming
Role of Programming languages
• Influences on evolution of language design
– Computer capabilities: computers have evolved from the small, slow, and costly vacuum tube
machines of the 1950s to the super computers and micro computers of today. At same time, layers of
operating system is inserted between programming language and the underlying computer
hardware. These factors have influenced both the structure and cost of using the features of high-
level languages.
– Applications: computer use has spread rapidly from the original concentration on military, scientific,
business, and industrial applications in the 1950s, where the cost could be justified, to the computer
games, PCs, internet and applications in every area of human activity seen today. The requirements
of these new application areas affect the designs of new languages and revisions and extensions of
older ones.
– Programming methods: language designs have evolved to reflect our changing understanding of
good methods for writing large and complex programs and to reflect the changing environment in
which programming is done.
– Implementation methods: the development of better implementation methods has affected the
choice of features to include in new language designs.
– Theoretical studies: Research into the conceptual foundations for language design and
implementation, using formal mathematical methods, has deepened our understanding of the
strengths and weaknesses of language features, which has influenced the inclusion of these features
in new language designs.
– Standardization: the need for standard languages that can be implemented easily on a variety of
computer systems, which allow programs to be transported from one computer to another, has
provided a strong conservative influence on the evolution of language designs.
Attributes of a good programming language