KARPAGAM ACADEMY OF HIGHER EDUCATION
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
UNIT-I Syllabus
Unit I – Introduction
Language Evolution: Machine Language, Assembly Language, High Level Language.
Translators:Compiler, Interpreter and Assembler. The Compilation Process, Linker, Loader, Study of
HLL,Characteristics of Good Language, Generation of Languages, Study of Programming
Languages(Function Oriented, Object Oriented, Event-Based). Problem Solving and Algorithmic
Thinking. Overview – problem definition, logical reasoning;
What is Machine Language?
Machine language is a collection of binary digits or bits that the computer reads and
interprets. Machine language is a low-level language made up of binary numbers or bits that a
computer can understand. It is also known as machine code or object code. The only language
that the computer understands is machine language. All programmes and programming
languages, such as Swift and C++, produce or run programmes in machine language before
they are run on a computer. When a specific task, even the smallest process executes,
machine language is transported to the system processor. Computers are only able to
understand binary data as they are digital devices.
The operating system defines how the program should write so that it can be converted to
machine language and the system takes appropriate action. The computer programs and
scripts can also be written in other programming languages like C, C++, and JAVA.
However, these languages cannot be directly understood by a computer system so there is a
need for a program that can convert these computer programs to machine language. The
compiler is used to convert the programs to machine language which can be easily understood
by computer systems. The compiler generates the binary file and executable file.
Example of machine language for the text “Hello World”:-
01001000 0110101 01101100 01101100 01101111 00100000 01010111 01101111 01110010
01101100 01100100
Assembly Language
The assembly language is considered a low-level language for microprocessors and many
other programmable devices. The assembly language is also considered a second-generation
language. The first generation language is machine language. The assembly language is
mostly famous for writing an operating system and also in writing different desktop
applications. The operations carried out by programmers using assembly language are
memory management, registry access, and clock cycle operations. The drawback of assembly
1
, KARPAGAM ACADEMY OF HIGHER EDUCATION
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
language is the code cannot be reused and the language is not so easy to understand. The
assembly language is considered a group of other languages. It is used to implement the
symbolic representation of machine code which is used to program CPU architecture. The
other name of assembly language is assembly code. For any processor, the most used
programming language is assembly language. The assembly language uses the same structure
and commands which machine language does use but it uses names in place of numbers. The
operations performed using the assembly languages are very fast. The operations are much
faster when it is compared to high-level language.
Machine Language Assembly Language
Machine language is a low-level Assembly language is a human-only language that
programming language made out of binary is not understood by computers. As a result, it acts
numbers or bits that can only be read by as a link between high-level programming
machines. It is also known as machine code languages and machine languages, requiring the
or object code, in which instructions are usage of an assembler to convert instructions into
executed directly by the CPU. machine or object code.
In machine language, error fixing and Assembly language has conventional instruction
modifications cannot be done, and the sets, as well as the ability to correct errors and
features of machine languages are varied modify programs.
accordingly.
Machine languages are platform-dependent The syntaxes of Assembly languages are similar
and very difficult to understand by human to the English language; therefore, it is easy to
beings. understand by a human.
Machine language is not possible to learn as Assembly language is easy to memorize, and it is
it is difficult to memorize and serves as a used for microprocessor-based applications/
machine code only. devices and real-time systems.
In machine language, all data is present in As compared to machine language, the execution
binary format that makes it fast in
2
, KARPAGAM ACADEMY OF HIGHER EDUCATION
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
execution. speed of assembly language is slow.
The sequences of bits are used by Machine Instead of using raw sequences of bits, assembly
language to give commands. Zero represents language uses "mnemonics" names and symbols;
the off or false state, while one represents therefore, users do not need to remember op-
the on or true state. It is dependent on the codes with assembly language. In assembly
CPU to the conversion of high-level languages, humans can map the code to machine
programming language to machine code, and the codes are slightly more readable
language.
The first-generation programming The second generation of programming languages
languages are Machine languages, which do is assembly languages, which use assembler as a
not need a translator. translator to convert mnemonics into machine-
understandable form.
Machine language is hardware-dependent Assembly language is not portable, and it is
and does not allow for modification. machine-dependent and can be modified easily.
In the syntax of machine language, there are As compared to machine language, there are
more chances of errors. fewer chances of syntax errors in assembly
language.
3. High-Level Language
high-level language is easy to understand and the code can be written easily as the programs
written are user-friendly in a high-level language. The other advantage of code written in a
high-level language is the code is independent of a computer system which means the code
can be transferred to other machines. The high-level of language uses the concept of
abstraction and also focuses on programming language rather than focusing on computer
hardware components like register utilization or memory utilization. The development of
3
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
UNIT-I Syllabus
Unit I – Introduction
Language Evolution: Machine Language, Assembly Language, High Level Language.
Translators:Compiler, Interpreter and Assembler. The Compilation Process, Linker, Loader, Study of
HLL,Characteristics of Good Language, Generation of Languages, Study of Programming
Languages(Function Oriented, Object Oriented, Event-Based). Problem Solving and Algorithmic
Thinking. Overview – problem definition, logical reasoning;
What is Machine Language?
Machine language is a collection of binary digits or bits that the computer reads and
interprets. Machine language is a low-level language made up of binary numbers or bits that a
computer can understand. It is also known as machine code or object code. The only language
that the computer understands is machine language. All programmes and programming
languages, such as Swift and C++, produce or run programmes in machine language before
they are run on a computer. When a specific task, even the smallest process executes,
machine language is transported to the system processor. Computers are only able to
understand binary data as they are digital devices.
The operating system defines how the program should write so that it can be converted to
machine language and the system takes appropriate action. The computer programs and
scripts can also be written in other programming languages like C, C++, and JAVA.
However, these languages cannot be directly understood by a computer system so there is a
need for a program that can convert these computer programs to machine language. The
compiler is used to convert the programs to machine language which can be easily understood
by computer systems. The compiler generates the binary file and executable file.
Example of machine language for the text “Hello World”:-
01001000 0110101 01101100 01101100 01101111 00100000 01010111 01101111 01110010
01101100 01100100
Assembly Language
The assembly language is considered a low-level language for microprocessors and many
other programmable devices. The assembly language is also considered a second-generation
language. The first generation language is machine language. The assembly language is
mostly famous for writing an operating system and also in writing different desktop
applications. The operations carried out by programmers using assembly language are
memory management, registry access, and clock cycle operations. The drawback of assembly
1
, KARPAGAM ACADEMY OF HIGHER EDUCATION
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
language is the code cannot be reused and the language is not so easy to understand. The
assembly language is considered a group of other languages. It is used to implement the
symbolic representation of machine code which is used to program CPU architecture. The
other name of assembly language is assembly code. For any processor, the most used
programming language is assembly language. The assembly language uses the same structure
and commands which machine language does use but it uses names in place of numbers. The
operations performed using the assembly languages are very fast. The operations are much
faster when it is compared to high-level language.
Machine Language Assembly Language
Machine language is a low-level Assembly language is a human-only language that
programming language made out of binary is not understood by computers. As a result, it acts
numbers or bits that can only be read by as a link between high-level programming
machines. It is also known as machine code languages and machine languages, requiring the
or object code, in which instructions are usage of an assembler to convert instructions into
executed directly by the CPU. machine or object code.
In machine language, error fixing and Assembly language has conventional instruction
modifications cannot be done, and the sets, as well as the ability to correct errors and
features of machine languages are varied modify programs.
accordingly.
Machine languages are platform-dependent The syntaxes of Assembly languages are similar
and very difficult to understand by human to the English language; therefore, it is easy to
beings. understand by a human.
Machine language is not possible to learn as Assembly language is easy to memorize, and it is
it is difficult to memorize and serves as a used for microprocessor-based applications/
machine code only. devices and real-time systems.
In machine language, all data is present in As compared to machine language, the execution
binary format that makes it fast in
2
, KARPAGAM ACADEMY OF HIGHER EDUCATION
COURSE NAME: PROBLEM SOLVING TECHNIQUES
Unit I – Language Evolution
execution. speed of assembly language is slow.
The sequences of bits are used by Machine Instead of using raw sequences of bits, assembly
language to give commands. Zero represents language uses "mnemonics" names and symbols;
the off or false state, while one represents therefore, users do not need to remember op-
the on or true state. It is dependent on the codes with assembly language. In assembly
CPU to the conversion of high-level languages, humans can map the code to machine
programming language to machine code, and the codes are slightly more readable
language.
The first-generation programming The second generation of programming languages
languages are Machine languages, which do is assembly languages, which use assembler as a
not need a translator. translator to convert mnemonics into machine-
understandable form.
Machine language is hardware-dependent Assembly language is not portable, and it is
and does not allow for modification. machine-dependent and can be modified easily.
In the syntax of machine language, there are As compared to machine language, there are
more chances of errors. fewer chances of syntax errors in assembly
language.
3. High-Level Language
high-level language is easy to understand and the code can be written easily as the programs
written are user-friendly in a high-level language. The other advantage of code written in a
high-level language is the code is independent of a computer system which means the code
can be transferred to other machines. The high-level of language uses the concept of
abstraction and also focuses on programming language rather than focusing on computer
hardware components like register utilization or memory utilization. The development of
3