Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
84 views

Difference Between High Level Language and Low Level Language

The document discusses the differences between high-level and low-level programming languages. It defines programming languages and their characteristics. Low-level languages like machine language and assembly language interact directly with hardware and produce efficient but machine-dependent code. High-level languages like Python and Java provide abstraction from hardware and are easier for humans to read and write but require compilation or interpretation. The document provides examples of advantages and disadvantages of both types of languages.

Uploaded by

Mustafa
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
84 views

Difference Between High Level Language and Low Level Language

The document discusses the differences between high-level and low-level programming languages. It defines programming languages and their characteristics. Low-level languages like machine language and assembly language interact directly with hardware and produce efficient but machine-dependent code. High-level languages like Python and Java provide abstraction from hardware and are easier for humans to read and write but require compilation or interpretation. The document provides examples of advantages and disadvantages of both types of languages.

Uploaded by

Mustafa
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 9

The Kurdistan Regional Government Of Iraq

Ministry Of Higher Education


Duhok Polytechnic University
Information Technology Management

Report about
"Difference Between
High Level Language and Low Level Language"

Dep: Information Technology Management


Subject: C++ Programming
Stage: 1

Name of Student
Mustafa Kamal Shaban

Name of the Supervisor

Mrs Hanan A.Taher

2020-2021
TABLE OF CONTENTS

Introduction ......................................................................................................... 3
What are Computer Programming Languages? ............................................. 4
Characteristics of a programming Language ................................................... 4
Classification of Programming Languages ....................................................... 5
Low level languages ............................................................................................. 5
High level languages ............................................................................................ 6
Difference Between High Level Language and Low Level Language ........... 8
Conclusion ............................................................................................................ 9
Reference .............................................................................................................. 9

2
Introduction
A programming language is a formal language comprising a set of instructions that produce
various kinds of output. Programming languages are used in computer programming to
implement algorithms.

Most programming languages consist of instructions for computers. There are programmable
machines that use a set of specific instructions, rather than general programming languages.
Since the early 1800s, programs have been used to direct the behavior of machines such as
Jacquard looms, music boxes and player pianos.The programs for these machines (such as a
player piano's scrolls) did not produce different behavior in response to different inputs or
conditions.

A program is a set of instructions given to a computer to perform a specific operation. or


computer is a computational device which is used to process the data under the control of a
computer program.While executing the program, raw data is processed into a desired output
format. These computer programs are written in a programming language which are high
level languages. High level languages are nearly human languages which are more complex
then the computer understandable language which are called machine language, or low level
language.So after knowing the basics, we are ready to create a very simple and basic program.
Like we have different languages to communicate with each other, likewise, we have different
languages like C, C++, C#, Java, python, etc to communicate with the computers. The
computer only understands binary language (the language of 0’s and 1’s) also called machine-
understandable language or low-level language but the programs we are going to write are in
a high-level language which is almost similar to human language.

3
What are Computer Programming Languages?
Computer programming languages allow us to give instructions to a computer in a language
the computer understands. Just as many human-based languages exist, there are an array of
computer programming languages that programmers can use to communicate with a
computer. The portion of the language that a computer can understand is called a “binary.”
Translating programming language into binary is known as “compiling.” Each language,
from C Language to Python, has its own distinct features, though many times there are
commonalities between programming languages.

These languages allow computers to quickly and efficiently process large and complex swaths
of information. For example, if a person is given a list of randomized numbers ranging from
one to ten thousand and is asked to place them in ascending order, chances are that it will take
a sizable amount of time and include some errors.

There are dozens of programming languages used in the industry today.

Example (Python, Java, Ruby/Ruby on Rails ,HTML ,JavaScript ,C Language ,C++ ,C# ,

Objective C ,PHP ,SQL ,Swift) .

Characteristics of a programming Language


• A programming language must be simple, easy to learn and use, have good
readability and human recognizable.
• Abstraction is a must-have Characteristics for a programming language in which
ability to define the complex structure and then its degree of usability comes.
• A portable programming language is always preferred.
• Programming language’s efficiency must be high so that it can be easily converted
into a machine code and executed consumes little space in memory.
• A programming language should be well structured and documented so that it is
suitable for application development.
• Necessary tools for development, debugging, testing, maintenance of a program must
be provided by a programming language.
• A programming language should provide single environment known as Integrated
Development Environment(IDE).
• A programming language must be consistent in terms of syntax and semantics.

4
Classification of Programming Languages
Programming languages are basically classified into two main categories – Lowlevel
language and High-level language. Every programming language belongs to one of these
categories and sub-category.

Low level languages


Low-level languages are used to write programs that relate to the specific architecture and
hardware of a particular type of computer. They are closer to the native language of a
computer (binary), making them harder for programmers to understand. Programs written in
low-level languages are fast and memory efficient. However, it is nightmare for programmers
to write, debug and maintain low-level programs. They are mostly used to develop operating
systems, device drivers, databases and applications that require direct hardware access. Low
level languages are further classified in two more categories – Machine language and
Assembly language.

• Machine language: Machine language is closest language to the hardware. It consists


set of instructions that are executed directly by the computer. These instructions are a
sequence of binary bits. Each instruction performs a very specific and small task.
Instructions written in machine language are machine dependent and varies from
computer to computer.
• Assembly language: Assembly language is an improvement over machine language.
Similar to machine language, assembly language also interacts directly with the
hardware. Instead of using a raw binary sequence to represent an instruction set,
assembly language uses mnemonics. Assembly language uses a special program called
assembler. The assembler translates mnemonics to specific machine code.

Advantages of low-level languages

• Programs developed using low-level languages are fast and memory efficient.
• Programmers can utilize processor and memory in a better way using a low-level
language.
• There is no need of any compiler or interpreters to translate the source to machine
code. Thus, cuts the compilation and interpretation time.
• Low-level languages provide direct manipulation of computer registers and
storage.
• It can directly communicate with hardware devices.

5
Disadvantages of low-level languages

• Programs developed using low-level languages are machine dependent and are not
portable.
• It is difficult to develop, debug and maintain.
• Low-level programs are more error-prone.
• Low-level programming usually results in poor programming productivity.
• A programmer must have additional knowledge of the computer architecture of a
• particular machine, for programming in the low-level language.

High level languages


High-level languages are similar to the human language. high-level languages are
programmers friendly, easy to code, debug and maintain. it provides a higher level of
abstraction from machine language. They do not interact directly with the hardware. Rather,
they focus more on the complex arithmetic operations, optimal program efficiency and
easiness in coding. Programs in a high-level language are written using English statements
(such as Python, Java, C++, etc). High-level programs require compilers/interpreters to
translate source code to machine language. We can compile the source code written in the
high-level language to multiple machine languages. Thus, they are machine independent
language. High-level languages are grouped into two categories based on the execution model
– compiled or interpreted languages. We can also classify high-level language several other
categories based on the programming paradigm.

Structured programming: (sometimes known as modular programming) is a programming


paradigm aimed at improving the clarity, quality, and development time of a computer
program by making extensive use of the structured control flow constructs of selection
(if/then/else) and repetition (while and for), block structures, and subroutines. Hence, making
it more efficient and easier to understand and modify. Structured programming frequently
employs a top-down design model, in which developers map out the overall program structure
into separate subsections. Note, it is possible to do structured programming in any
programming language.

Procedural programming: is a programming paradigm, derived from structured


programming, based upon the concept of the procedure call. Procedures, also known as
routines, subroutines, or functions, simply contain a series of computational steps to be
carried out. Any given procedure might be called at any point during a program's execution,
including by other procedures or itself.

6
Object-oriented programming :is a programming paradigm based on the concept of
"objects", which may contain data, in the form of fields, often known as attributes; and code,
in the form of procedures, often known as methods. A feature of objects is that an object's
procedures can access and often modify the data fields of the object with which they are
associated. Thus, programmers define not only the data type of a data structure but also the
types of operations (functions) that can be applied to the data structure.

Advantages of High-level language

• High-level languages are programmer friendly. They are easy to write, debug and
maintain.
• It provide higher level of abstraction from machine languages.
• It is machine independent language.
• Easy to learn.
• Less error-prone, easy to find and debug errors.
• High-level programming results in better programming productivity.

Disadvantages of High-level language

• It takes additional translation times to translate the source to machine code.


• High-level programs are comparatively slower than low-level programs.
• Compared to low-level programs, they are generally less memory efficient.
• Cannot communicate directly with the hardware.

7
Difference Between High Level Language and Low Level Language

8
Conclusion
The low-level languages are mainly used to construct less operational application where
simple and specific functions are required such as CNC machine, electronic devices etcetera.
On the other hand, high-level languages are used to build operation extensive applications
where a long sequence of functions are carried out like softwares used in hospitals, industries
and factories etcetera.

Reference

1. Mr. Griffith, Stuyvesant High School Computer Science Department, Introduction to


computer science.
2. Dr. Raaid Alubady, UNIVERSITY OF BABYLON,Programming Languages:
Classification, Execution Model, and Errors.

You might also like