This document provides an overview of basic fundamentals of C programming, including definitions of software, programs, and different types of software. It also discusses programming languages and how they are classified, including machine language, assembly language, high-level languages, and fourth generation languages. Translators like assemblers, compilers, and interpreters are described which convert code between machine language and other languages. Finally, the role of editors in programming is covered.
This document provides an introduction to programming languages. It discusses the evolution of programming languages from machine languages to modern languages. It describes key terminology like programmers, programs, and programming. It also covers different types of language translators like assemblers, compilers, and interpreters that translate human-readable code into machine-readable code. Finally, it categorizes programming languages into five generations from low-level machine languages to high-level languages that resemble human languages.
The PowerPoint presentation on programming languages provides an insightful overview of the fundamental concepts, types, and applications of programming languages. The presentation begins by introducing the concept of programming languages and their significance in software development and computer programming. It covers the major categories of programming languages, including procedural, object-oriented, functional, and scripting languages, discussing their characteristics, syntax, and primary use cases. The presentation highlights popular programming languages such as Python, Java, C++, and JavaScript, showcasing their strengths, ecosystems, and industry applications. It also touches upon emerging trends in programming languages, such as machine learning and data science-focused languages. The presentation equips the audience with a broad understanding of programming languages, enabling them to make informed decisions and choose the most suitable language for their development projects.
The document provides an introduction to programming languages. It discusses the different levels of programming languages including low-level languages like machine language and assembly language that are close to hardware, and high-level languages like C++, Java, and Python that are more abstract. It also covers procedural languages which specify steps to complete tasks and object-oriented languages which model real-world objects. Examples are given of popular languages from each paradigm like C, Pascal, and PHP for procedural and C++, Java, Ruby for object-oriented.
This document discusses programming languages. It begins by asking what a programming language is and why there are so many types. It then defines a programming language as a set of rules that tells a computer what operations to perform. The document discusses the different types of programming languages like low-level languages close to machine code and high-level languages closer to English. It covers many popular programming languages from early generations like FORTRAN and COBOL to modern languages like C, C++, Java, and scripting languages. It concludes by discussing qualities of good programming languages like writability, readability, reliability and maintainability.
Computer languages allow humans to communicate with computers through programming. There are different types of computer languages at different levels of abstraction from machine language up to high-level languages. High-level languages are closer to human language while low-level languages are closer to machine-readable code. Programs written in high-level languages require compilers or interpreters to convert them to machine-readable code that can be executed by computers.
This document discusses different types of computer languages. It begins by distinguishing between programming languages and other computer languages like markup languages. It then categorizes languages as either low-level or high-level. Low-level languages like machine language and assembly language are closer to machine code, while high-level languages use English-like syntax and are translated to machine code. Several examples of each type are provided along with their advantages and disadvantages.
Programming languages allow humans to communicate instructions to computers. There are many programming languages that differ based on their level, model, and intended applications. Low-level languages like machine language and assembly language use binary codes and mnemonics that closely match the computer's architecture, making programs fast but difficult for humans. Higher-level languages have more abstract constructs that are translated into machine code, making programs easier for humans to write but slower to execute. Programming languages continue to evolve to balance expressiveness for programmers with efficiency of execution.
This document discusses the classification and evolution of programming languages. It describes how programming languages have been categorized into low-level languages (machine language and assembly language), high-level languages (procedural languages from 3rd generation), and more advanced languages (non-procedural from 4th generation and natural languages from 5th generation). It provides examples like COBOL, SQL, BASIC, Pascal, C++, Java and Visual Basic to illustrate different types of languages and their uses.
Computer languages can be categorized into high-level languages, low-level languages, and machine language. High-level languages are closer to human language and require compilers or interpreters, while low-level languages like assembly language are closer to machine language. Machine language is binary code that is directly executable by computers. There are also different generations of languages that evolved with advances in hardware and software.
Computer languages can be categorized into high-level languages, low-level languages, and machine language. High-level languages are easier for humans to read and write but require compilers or interpreters, while low-level languages like assembly language are closer to machine language but still use symbolic instructions. Machine language uses only binary and is directly executable by computers. Languages have evolved through five generations from low-level machine and assembly languages to modern high-level languages.
Computer languages can be categorized into different generations based on their level of abstraction from machine language. First generation languages are machine languages that use binary, while assembly languages as second generation are closer to machine language with mnemonic codes. High-level languages of the third generation like FORTRAN and COBOL are easier for humans to read and write. Fourth generation languages attempt more natural language programming, and fifth generation use visual interfaces to generate code compiled by lower level languages. The key aspects of a program include variables, statements, keywords, instructions, and the ability to perform tasks through organized lists of commands.
Abstraction level taxonomy of programming language frameworksijpla
油
The main purpose of this article is to
describe the taxonomy of computer languages according to the levels
of abstraction. There exists so many computer languages because of so many reasons like the evolution of
better computer languages over the time; the socio
-
economic factors as the proprie
tary interests,
commercial advantages; expressive power; ease of use of novice; orientation toward special purposes;
orientation toward special hardware; and diverse ideas about most suitability. Moreover, the important
common properties of most of these l
anguages are discussed here. No programming language is designed
in a vacuity, but it solves some specific kinds of problems. There is a different framework for each problem
and best suitable framework for e
ach problem. A single framework is not best for a
ll types of problems. So,
it is important to select vigilantly the frameworks supported by the language.
The five generation of the
computer programming languages are explored in this paper to some extent
This document provides notes on programming in C from a class on the subject. It covers basics of C programming including data types, constants, operators, expressions, input/output statements, decision making statements, looping statements and more. It discusses the structure of a C program and includes comments, preprocessor directives, global variable declarations and the main function. It also covers the history and applications of C, types of programming languages, and an introduction to programming paradigms and C as a programming language.
This document provides an overview of different computer languages. It begins by explaining that computer languages allow communication between humans and computers. It then distinguishes between low-level languages like machine language and assembly language, which are close to hardware, and high-level languages, which are closer to human languages. Popular high-level languages mentioned include Python, JavaScript, Java, C, and C++. Procedural languages require specifying how to solve a problem, while non-procedural languages only require specifying what problem to solve.
This document discusses the evolution of programming languages from early machine languages to modern higher-level languages. It begins with an introduction to human and computer languages. It then covers the development of machine languages, assembly languages, and higher-level languages like FORTRAN and COBOL. The document discusses the advantages of each generation of languages and examples of languages from the 1950s to modern times.
This document discusses different types of computer languages. It begins by distinguishing between programming languages and other computer languages like markup languages. It then describes low-level languages like machine language and assembly language that are closest to binary and easiest for computers to understand directly. It also covers high-level languages like BASIC, COBOL, and Java that are easier for humans to read but require translation. Key advantages and disadvantages of each level are provided. The document concludes that computer languages serve to facilitate communication between humans and computers.
This document discusses computer languages and language translators. It describes:
1) Two types of computer languages - low-level languages like machine code and assembly, and high-level languages like C++ and Java. Low-level languages are directly understood by computers while high-level languages are easier for humans.
2) Three generations of languages - first generation used only 1s and 0s, second used assembly, and third introduced high-level languages.
3) Three main types of language translators - compilers which translate programs into executable object code, interpreters which translate line-by-line, and assemblers which translate assembly code into machine code through a one-to-one mapping process.
This document provides an introduction to computer programming concepts including:
- A programming language is a set of rules that allows communication between humans and computers to perform operations. Different languages have evolved for different types of programs and problem domains.
- Programs are written in high-level languages then compiled or interpreted into machine-readable code. Common language types include procedural, object-oriented, functional, and declarative languages.
- The programming process involves understanding the problem, designing an algorithm, writing source code, compiling for errors, debugging, and executing the program. Flowcharts can help design the program logic.
The document discusses programming languages and their evolution. It begins by explaining that a programming language allows communication between humans and computers by telling computers what tasks to perform. It then summarizes the main types of programming languages:
1) Machine language uses binary and is directly understood by computers but is difficult for humans.
2) Assembly language uses mnemonics to make machine language more readable for programmers.
3) High-level languages use words and concepts familiar to humans, making programming accessible to non-experts. However, programs must be translated before computers can execute them.
4) Fourth generation languages provide even more human-friendly features like built-in database support.
01.Low Level Languages
02.High Level Languages
03. Machine Language
04. Assembly language
05.Third Generation Languages
06. Fourth Generation Languages
07. 5TH GENERATION
The document discusses computer programming in C language. It begins by explaining that C was created in 1972 as a system programming language to give programmers access to a machine's instruction set. It describes the major components of a computer as hardware, software, and liveware (users). It then covers the different types of programming languages as low-level (machine and assembly), high-level, and their characteristics. The document also discusses system software types like operating systems and utilities, and how programs are compiled from source code to machine code.
Lec21&22.pptx programing language and there studysamiullahamjad06
油
Programming languages can be categorized based on their level of abstraction from the machine. Low-level languages like machine language and assembly language are closer to the machine while high-level languages are more abstract. High-level languages are easier for humans to read and write but require compilers or interpreters to convert them to machine language. Common high-level languages include FORTRAN, COBOL, BASIC, Pascal, C, C++ and newer languages like JavaScript and Python.
A Systematic Review:
Provides a clear and transparent process
Facilitates efficient integration of information for rational decision
making
Demonstrates where the effects of health care are consistent and
where they do vary
Minimizes bias (systematic errors) and reduce chance effects
Can be readily updated, as needed.
Meta-analysis can provide more precise estimates than individual
studies
Allows decisions based on evidence , whole of it and not partial
This document discusses different types of computer languages. It begins by distinguishing between programming languages and other computer languages like markup languages. It then categorizes languages as either low-level or high-level. Low-level languages like machine language and assembly language are closer to machine code, while high-level languages use English-like syntax and are translated to machine code. Several examples of each type are provided along with their advantages and disadvantages.
Programming languages allow humans to communicate instructions to computers. There are many programming languages that differ based on their level, model, and intended applications. Low-level languages like machine language and assembly language use binary codes and mnemonics that closely match the computer's architecture, making programs fast but difficult for humans. Higher-level languages have more abstract constructs that are translated into machine code, making programs easier for humans to write but slower to execute. Programming languages continue to evolve to balance expressiveness for programmers with efficiency of execution.
This document discusses the classification and evolution of programming languages. It describes how programming languages have been categorized into low-level languages (machine language and assembly language), high-level languages (procedural languages from 3rd generation), and more advanced languages (non-procedural from 4th generation and natural languages from 5th generation). It provides examples like COBOL, SQL, BASIC, Pascal, C++, Java and Visual Basic to illustrate different types of languages and their uses.
Computer languages can be categorized into high-level languages, low-level languages, and machine language. High-level languages are closer to human language and require compilers or interpreters, while low-level languages like assembly language are closer to machine language. Machine language is binary code that is directly executable by computers. There are also different generations of languages that evolved with advances in hardware and software.
Computer languages can be categorized into high-level languages, low-level languages, and machine language. High-level languages are easier for humans to read and write but require compilers or interpreters, while low-level languages like assembly language are closer to machine language but still use symbolic instructions. Machine language uses only binary and is directly executable by computers. Languages have evolved through five generations from low-level machine and assembly languages to modern high-level languages.
Computer languages can be categorized into different generations based on their level of abstraction from machine language. First generation languages are machine languages that use binary, while assembly languages as second generation are closer to machine language with mnemonic codes. High-level languages of the third generation like FORTRAN and COBOL are easier for humans to read and write. Fourth generation languages attempt more natural language programming, and fifth generation use visual interfaces to generate code compiled by lower level languages. The key aspects of a program include variables, statements, keywords, instructions, and the ability to perform tasks through organized lists of commands.
Abstraction level taxonomy of programming language frameworksijpla
油
The main purpose of this article is to
describe the taxonomy of computer languages according to the levels
of abstraction. There exists so many computer languages because of so many reasons like the evolution of
better computer languages over the time; the socio
-
economic factors as the proprie
tary interests,
commercial advantages; expressive power; ease of use of novice; orientation toward special purposes;
orientation toward special hardware; and diverse ideas about most suitability. Moreover, the important
common properties of most of these l
anguages are discussed here. No programming language is designed
in a vacuity, but it solves some specific kinds of problems. There is a different framework for each problem
and best suitable framework for e
ach problem. A single framework is not best for a
ll types of problems. So,
it is important to select vigilantly the frameworks supported by the language.
The five generation of the
computer programming languages are explored in this paper to some extent
This document provides notes on programming in C from a class on the subject. It covers basics of C programming including data types, constants, operators, expressions, input/output statements, decision making statements, looping statements and more. It discusses the structure of a C program and includes comments, preprocessor directives, global variable declarations and the main function. It also covers the history and applications of C, types of programming languages, and an introduction to programming paradigms and C as a programming language.
This document provides an overview of different computer languages. It begins by explaining that computer languages allow communication between humans and computers. It then distinguishes between low-level languages like machine language and assembly language, which are close to hardware, and high-level languages, which are closer to human languages. Popular high-level languages mentioned include Python, JavaScript, Java, C, and C++. Procedural languages require specifying how to solve a problem, while non-procedural languages only require specifying what problem to solve.
This document discusses the evolution of programming languages from early machine languages to modern higher-level languages. It begins with an introduction to human and computer languages. It then covers the development of machine languages, assembly languages, and higher-level languages like FORTRAN and COBOL. The document discusses the advantages of each generation of languages and examples of languages from the 1950s to modern times.
This document discusses different types of computer languages. It begins by distinguishing between programming languages and other computer languages like markup languages. It then describes low-level languages like machine language and assembly language that are closest to binary and easiest for computers to understand directly. It also covers high-level languages like BASIC, COBOL, and Java that are easier for humans to read but require translation. Key advantages and disadvantages of each level are provided. The document concludes that computer languages serve to facilitate communication between humans and computers.
This document discusses computer languages and language translators. It describes:
1) Two types of computer languages - low-level languages like machine code and assembly, and high-level languages like C++ and Java. Low-level languages are directly understood by computers while high-level languages are easier for humans.
2) Three generations of languages - first generation used only 1s and 0s, second used assembly, and third introduced high-level languages.
3) Three main types of language translators - compilers which translate programs into executable object code, interpreters which translate line-by-line, and assemblers which translate assembly code into machine code through a one-to-one mapping process.
This document provides an introduction to computer programming concepts including:
- A programming language is a set of rules that allows communication between humans and computers to perform operations. Different languages have evolved for different types of programs and problem domains.
- Programs are written in high-level languages then compiled or interpreted into machine-readable code. Common language types include procedural, object-oriented, functional, and declarative languages.
- The programming process involves understanding the problem, designing an algorithm, writing source code, compiling for errors, debugging, and executing the program. Flowcharts can help design the program logic.
The document discusses programming languages and their evolution. It begins by explaining that a programming language allows communication between humans and computers by telling computers what tasks to perform. It then summarizes the main types of programming languages:
1) Machine language uses binary and is directly understood by computers but is difficult for humans.
2) Assembly language uses mnemonics to make machine language more readable for programmers.
3) High-level languages use words and concepts familiar to humans, making programming accessible to non-experts. However, programs must be translated before computers can execute them.
4) Fourth generation languages provide even more human-friendly features like built-in database support.
01.Low Level Languages
02.High Level Languages
03. Machine Language
04. Assembly language
05.Third Generation Languages
06. Fourth Generation Languages
07. 5TH GENERATION
The document discusses computer programming in C language. It begins by explaining that C was created in 1972 as a system programming language to give programmers access to a machine's instruction set. It describes the major components of a computer as hardware, software, and liveware (users). It then covers the different types of programming languages as low-level (machine and assembly), high-level, and their characteristics. The document also discusses system software types like operating systems and utilities, and how programs are compiled from source code to machine code.
Lec21&22.pptx programing language and there studysamiullahamjad06
油
Programming languages can be categorized based on their level of abstraction from the machine. Low-level languages like machine language and assembly language are closer to the machine while high-level languages are more abstract. High-level languages are easier for humans to read and write but require compilers or interpreters to convert them to machine language. Common high-level languages include FORTRAN, COBOL, BASIC, Pascal, C, C++ and newer languages like JavaScript and Python.
A Systematic Review:
Provides a clear and transparent process
Facilitates efficient integration of information for rational decision
making
Demonstrates where the effects of health care are consistent and
where they do vary
Minimizes bias (systematic errors) and reduce chance effects
Can be readily updated, as needed.
Meta-analysis can provide more precise estimates than individual
studies
Allows decisions based on evidence , whole of it and not partial
How to Install Odoo 18 with Pycharm - Odoo 18 際際滷sCeline George
油
In this slide well discuss the installation of odoo 18 with pycharm. Odoo 18 is a powerful business management software known for its enhanced features and ability to streamline operations. Built with Python 3.10+ for the backend and PostgreSQL as its database, it provides a reliable and efficient system.
Marketing is Everything in the Beauty Business! 憓 Talent gets you in the ...coreylewis960
油
Marketing is Everything in the Beauty Business! 憓
Talent gets you in the gamebut visibility keeps your chair full.
Todays top stylists arent just skilledtheyre seen.
Thats where MyFi Beauty comes in.
We Help You Get Noticed with Tools That Work:
Social Media Scheduling & Strategy
We make it easy for you to stay consistent and on-brand across Instagram, Facebook, TikTok, and more.
Youll get content prompts, captions, and posting tools that do the work while you do the hair.
ワ Your Own Personal Beauty App
Stand out from the crowd with a custom app made just for you. Clients can:
Book appointments
Browse your services
View your gallery
Join your email/text list
Leave reviews & refer friends
種 Offline Marketing Made Easy
We provide digital flyers, QR codes, and branded business cards that connect straight to your appturning strangers into loyal clients with just one tap.
ッ The Result?
You build a strong personal brand that reaches more people, books more clients, and grows with you. Whether youre just starting out or trying to level upMyFi Beauty is your silent partner in success.
General Quiz at Maharaja Agrasen College | Amlan Sarkar | Prelims with Answer...Amlan Sarkar
油
Prelims (with answers) + Finals of a general quiz originally conducted on 13th November, 2024.
Part of The Maharaja Quiz - the Annual Quiz Fest of Maharaja Agrasen College, University of Delhi.
Feedback welcome at amlansarkr@gmail.com
CLEFT LIP AND PALATE: NURSING MANAGEMENT.pptxPRADEEP ABOTHU
油
Cleft lip, also known as cheiloschisis, is a congenital deformity characterized by a split or opening in the upper lip due to the failure of fusion of the maxillary processes. Cleft lip can be unilateral or bilateral and may occur along with cleft palate. Cleft palate, also known as palatoschisis, is a congenital condition characterized by an opening in the roof of the mouth caused by the failure of fusion of the palatine processes. This condition can involve the hard palate, soft palate, or both.
How to Setup Company Data in Odoo 17 Accounting AppCeline George
油
The Accounting module in Odoo 17 is a comprehensive tool designed to manage all financial aspects of a business. It provides a range of features that help with everything from day-to-day bookkeeping to advanced financial analysis.
Pass SAP C_C4H47_2503 in 2025 | Latest Exam Questions & Study MaterialJenny408767
油
Pass SAP C_C4H47_2503 with expert-designed practice tests & real questions. Start preparing today with ERPPrep.com and boost your SAP Sales Cloud career!
1. 1 | P a g e
Concept of Programming language
A programming language is a computer language programmers use to develop software
programs, scripts, or other sets of instructions for computers to execute.
Once a programmer learns the languages rules, syntax, and structure, they write the source
code in a text editor or IDE. Then, the programmer often compiles the code into machine
language that can be understood by the computer. Scripting languages, which do not require a
compiler, use an interpreter to execute the script.
A programming language is a vocabulary and set of grammatical rules for instructing
a computer or computing device to perform specific tasks. The term programming
language usually refers to high-level languages,
Such as BASIC, C, C++, COBOL, Java, FORTRAN, Ada, and Pascal.
Generation of Programming Languages
There are five generations of Programming languages. They are:
First Generation Languages : (M.L.L)
These are low-level languages like machine language.
Second Generation Languages : (L.L)
These are low-level assembly languages used in kernels and hardware drives.
Third Generation Languages : (H.L.L)
These are high-level languages like C, C++, Java, Visual Basic, and JavaScript.
Fourth Generation Languages :
These are languages that consist of statements that are similar to statements in the human
language. These are used mainly in database programming and scripting. Examples of
these languages include Perl, Python, Ruby, SQL, MatLab(MatrixLaboratory).
Fifth Generation Languages :
These are the programming languages that have visual tools to develop a program. Examples
of fifth-generation languages include Mercury, OPS5, and Prolog.
The first two generations are called low-level languages. The next three generations are
called high-level languages.
3. 3 | P a g e
1. First Generation Language :
The first generation languages are also called machine languages/ 1G language. This
language is machine-dependent. The machine language statements are written in binary code
(0/1 form) because the computer can understand only binary language.
Advantages :
1. Fast & efficient as statements are directly written in binary language.
2. No translator is required.
Disadvantages :
1. Difficult to learn binary codes.
2. Difficult to understand both programs & where the error occurred.
2. Second Generation Language :
The second-generation languages are also called assembler languages/ 2G languages.
Assembly language contains human-readable notations that can be further converted to
machine language using an assembler.
Assembler converts assembly level instructions to machine level instructions.
Programmers can write the code using symbolic instruction codes that are meaningful
abbreviations of mnemonics. It is also known as low-level language.
Advantages :
1. It is easier to understand if compared to machine language.
2. Modifications are easy.
3. Correction & location of errors are easy.
Disadvantages :
1. Assembler is required.
2. This language is architecture /machine-dependent, with a different instruction set for
different machines.
4. 4 | P a g e
3. Third Generation Language :
The third generation is also called procedural language /3 GL. It consists of the use of a series
of English-like words that humans can understand easily, to write instructions. Its also called
High-Level Programming Language. For execution, a program in this language needs to be
translated into machine language using Compiler/ Interpreter. Examples of this type of
language are C, PASCAL, FORTRAN, COBOL, etc.
Advantages :
1. Use of English-like words makes it a human-understandable language.
2. Lesser number of lines of code as compared to above 2 languages.
3. Same code can be copied to another machine & executed on that machine by using
compiler-specific to that machine.
Disadvantages :
1. Compiler/ interpreter is needed.
2. Different compilers are needed for different machines.
4. Fourth Generation Language :
The fourth-generation language is also called a non procedural language/ 4GL. It enables
users to access the database. Examples: SQL, Foxpro, Focus, etc.
These languages are also human-friendly to understand.
Advantages :
1. Easy to understand & learn.
2. Less time required for application creation.
3. It is less prone to errors.
Disadvantages :
1. Memory consumption is high.
2. Has poor control over Hardware.
3. Less flexible.
5. Fifth Generation Language :
The fifth-generation languages are also called 5GL. It is based on the concept of artificial
intelligence(A.I). It uses the concept that rather than solving a problem algorithmically, an
application can be built to solve it based on some constraints, i.e., we make computers learn
to solve any problem. Parallel Processing & superconductors are used for this type of
language to make real artificial intelligence.
Example: PROLOG, LISP, etc.
Advantages :
1. Machines can make decisions.
5. 5 | P a g e
2. Programmer effort reduces to solve a problem.
3. Easier than 3GL or 4GL to learn and use.
Disadvantages :
1. Complex and long code.
2. More resources are required & they are expensive too.
6. 6 | P a g e
C Programming
C is a procedural and general-purpose programming language that is used most widely for
system programming. Dennis Ritchie initially developed C in between 1972 and 1973 at Bell
Labs. American National Standard Institute (ANSI) later formalized this programming
language in 1988. The initial purpose of the development of the C programming language
was to make utilities of the UNIX based operating system. Directly or indirectly many other
computer programming languages have taken/borrowed features from C programming
language. Program written in C can be very efficiently mapped to machine instructions which
make C programming very much popular to use for any embedded software application
development which runs on a microcontroller.
C programming is considered as the base for other programming languages, that is why it is
known as mother language.
It can be defined by the following ways:
1. Mother language
2. System programming language
3. Procedure-oriented programming language
4. Structured programming language
5. Mid-level programming language
1) C as a mother language
C language is considered as the mother language of all the modern programming
languages because most of the compilers, JVMs, Kernels, etc. are written in C
language, and most of the programming languages follow C syntax, for example, C++,
Java, C#, etc.
It provides the core concepts like the array, strings, functions, file handling, etc. that are being
used in many languages like C++, Java, C#, etc.
7. 7 | P a g e
2) C as a system programming language
A system programming language is used to create system software. C language is a
system programming language because it can be used to do low-level programming
(for example driver and kernel). It is generally used to create hardware devices, OS,
drivers, kernels, etc. For example, Linux kernel is written in C.
It can't be used for internet programming like Java, .Net, PHP, etc.
3) C as a procedural language
A procedure is known as a function, method, routine, subroutine, etc. A procedural
language specifies a series of steps for the program to solve the problem.
A procedural language breaks the program into functions, data structures, etc.
C is a procedural language. In C, variables and function prototypes must be declared
before being used.
4) C as a structured programming language
A structured programming language is a subset of the procedural language. Structure
means to break a program into parts or blocks so that it may be easy to understand.
In the C language, we break the program into small-small modules, each module
performs specific task. Each module is defined by using function. It makes the program
easier to understand and modify.
5) C as a mid-level programming language
C is considered as a middle-level language because it supports the feature of both low-
level and high-level languages. C language program is converted into assembly code, it
supports pointer arithmetic (low-level), but it is machine independent (a feature of high-
level).
A Low-level language is specific to one machine, i.e., machine dependent. It is machine
dependent, fast to run. But it is not easy to understand.
A High-Level language is not specific to one machine, i.e., machine independent. It is
easy to understand.
8. 8 | P a g e
Why do we need to learn C?
C is the most widely and commonly used programming language to develop
the different operating systems. The popular operating systems like UNIX and
LINUX are written in C.
C program allows programs to maintain portable and compact code along with
maintaining performance and minimizing CPU constraints like memory and
execution time etc.
C programming language allows programmers to control memory
allocation and reallocation which will be very helpful while working with
software development for small embedded systems.
C is middle-level language and very fast in terms of execution compared
to other programming languages.
Different algorithms and data structures can be implemented using C language
very efficiently which can be used in may software applications.
Due to the portability feature of C programming language, the C
program written for one computer platform can easily be run on different
other platforms with very little modification in code.
Various compilers that are used for other programming languages can be very
efficiently designed and developed using the C programming language.
Applications of C
To develop and design system software like compilers for other programming
languages.
To develop different operating systems for embedded devices and kernels.
To develop graphics related software like gaming application.
To design and develop network device software.
To develop a software system where memory and execution time is constraint
like software for microcontrollers which is mainly used for small embedded
systems.
Used for systems that require direct access/modification of data from memory.
9. 9 | P a g e
Uses of programming language C
Operating Systems: It is used to program Operating systems like Windows, Linux,
Mac. Kernel, which is also known as a central part of an OS, is mostly developed in
the C language.
Mobile Phone: Mobile phone kernels are also written using this language. So, the
smartphones which we have in our hands all the time are running on C kernel.
Mobile Applications: Languages like C++, C#, Objective-C is derived from it and
are used to make phone and web applications.
Databases: Many popular databases like MySQL, Oracle Database, MS SQL Server
are written using this language.
3D movies, Animation, Computer Graphics: Applications which make 3D movies,
Animation, Computer Graphics need to be fast and efficient. Therefore, we code
these applications in C, as it is very efficient and fast.
Embedded Systems: Embedded systems like Mp3 player, Alarm clock, radio,
microwave, coffee making machine, sensors in the car etc., are coded and
programmed in C.
Advantages of programming language C
Below are the advantages:
Portable: Its portability allows code to run on different computers and different
operating systems without making any change.
Efficient: It is a general-purpose programming language. Therefore it
works efficiently.
Case-sensitive: You need to be very careful while writing the code as it
treats lowercase and uppercase letter differently.
Memory Manipulation and allocation: It has the ability to manipulate arbitrary
memory addresses. It also allows allocating the memory dynamically.
Middle-level language: It merges the features of both low level and high-level
languages in itself.
Therefore, it can be used for both:
1. Low-level programming: Like in the development of Kernels
2. High-level programming: Like in the development of applications.
Structured programming language: It is a structured programming
language. Therefore, a complex program can be broken into different
functions.
Ability to extend itself: Since the library supports it, it allows us to add our
own functions to its library.
11. 11 | P a g
e
Why should we use C Language?
We should use this language because of the following reasons:
First, it makes the code size small.
It is efficient, portable, structured and well understood.
It has only 32 keywords which are easy to remember.
It is near to Assembly language as code written in C language runs as fast as code
written in assembly language.
It has Pointers that connects hardware like kernel, drivers to a system; because of this
reason, C will always be in use.