Introduction to Programming

In this article, I’m gonna share you the detailed Introduction to Programming Languages. keep reading this article till the end of the article.

Introduction to Programming Languages

Are you aiming to become a Software engineer one day? Do you also want to develop an application for Solving Problems and People all over the world would love to use? Are you passionate enough to take the big step to enter the world of programming? Then you are in the right place. 

In this article, you will get a brief Introduction to Programming Languages. As part of this article, we are going to discuss the following pointers.

  1. Program and Programming
  2. Programming Languages
  3. Types of Software’s
  4. Operating Systems
  5. Translators in Programming Languages: Compiler, Interpreter, Assembler, Loader, and Linker

Program and Programming

Program: A Program is a common computer term that means it is executed by software that runs on a computer when the program is used as what it means to create a software program. The set of instructions are called a program. For Example, Programmers create programs by writing code that instructs the computer what to do and execute it on a special software designed for it such as turbo C for executing ‘C’ Programs.

Programming:- Programming is the implementation of logic to facilitate the specified computing operations and functionality. Thus, in simple words, we can say that the process of writing a program is called Programming.

What is Software?

A Software is a collection of the program which uses the resources of the Hardware components. A Program is a set of instructions that are designed for a particular task.

The set of programs is called software. Let us understand this with an example i.e. Calculator. For each button, there is some program written inside it. That means a calculator is a collection of programs. And we can also say that a Calculator is a software. So, the software is a collection of programs.

As per IT Standards software is a digitalized and automated process. Let us understand this with an example i.e. AC. If you set the timer to automatically off the AC after 1 hour, then after 1 hour the AC is going to be off. And again, using digits you can set the temperature of the AC. And these things are managed by software inside the AC.

Types of Software

Software is classified into two types, such as System Software and Application Software. For better understanding please have a look at the below image.

System Software

System Software is the software designed for a general purpose and does not have any limitations. It is basically designed to provide a platform for other software Systems. So, the Software does the functionality for the hardware devices like printers, mobile, processors, etc. System Software is classified into three types:

Operating System: DOS, WINDOWS, LINUX, UNIX

System Support: Compiler, Interpreter, Assembler

System Development: Linker, Loader, Editor

Application Software

Application Software is a program or group of programs designed for end-users i.e. designed for a specific task. Application Software does the functionality for business-oriented applications. Application Software is classified into two types:

Application-Specific: MS OFFICE, Oracle

General Purpose Software: Tally

What is a language?

Generally, languages are used to communicate with others. The languages like Odia / English / Marathi / Hindi are called human/regional languages, which are used to communicate with humans. The computer languages are used to write the programs [software] to communicate with the machines.

Types of computer languages:

Basically, computer languages are divided into 3 types:

Machine language

Created with binary code [0, 1] and they are very difficult for humans. Example: 11100001

Low level/assembly language

Created with English-like shortcuts called MNEMONICS. Example: Add, Sub, Subject, Subtract, Subway, Subscribe, Subscript, subordinate

High-level language

Created with simple English. Example: please, good morning, subject, addition, etc.

C is a high-level language with low-level features. Hence C is also called middle-level language. High-level features allow designing application software like calculator, calendar, media player, etc., and low-level features are used to design system software like OS, device drivers, translators. etc. Hence c is multi-purpose.

‘C’ is a high-level/middle-level programming language.

The languages are used to communicate with others. The computer languages are used to write the programs [software] to communicate with the machines.

What is a Programming Language?

A  Programming Language is a formal language, which comprises a set of instructions that is used to communicate with the computer. Programming Language is classified into two types:

  • High-Level Programming Language
  • Low-level Programming Language

For better understanding please have a look at the following image.

Dheeraj Patidar

Types of Programming Languages

High-Level Programming Language: 

The High-Level Programming Languages are syntactically similar to English and easy to understand. High-Level Programming Languages are user-dependent languages. A High-Level Programming Language is a combination of alphabets, digits, and symbols. It is called Micro Statements. By using a high-level programming language we are developing user interface applications. Examples: C, C++, VC++, JAVA, C#, Swift, Objective C, D-Language

Low-Level Programming Language:

The Low-Level Programming Languages are the languages that can be easily understandable to the system. These are system-dependent languages. In these two languages are there i.e.

  • Machine Language
  • Assembly Language

Machine Language:

Machine Language is the fundamental language for the system it can be directly understandable without any translation. These are machine-oriented languages that use the collection of the binary of 1’s and 0’s.

Assembly Language:

The Assembly Language can be called Symbolic Language. In order to remember easily the program coding be implementing this language. In this language, different types of symbols will be used to design the program. But this assembly code is directly not understandable to the system so we require translators.

As a programmer, if we know the programming language then it is not possible to interact with computers because the computer can understand binary code only.

In the above case, recommended to use a translator. As a programmer, if the instruction came in the programming language, the Translator will convert programming language code into binary format and according to every binary instruction, we will get an application or software.

Translators in Programming Languages

Always the user’s given instructions are in English, which is called source code. But the computer is not able to understand this source code and the computer understandable code is binary / machine. To convert this source code into binary code we are using the interface software called translators.

Translators are system software that converts programming language code into binary format. The translators are classified into three types:

  • Compiler
  • Interpreter
  • Assembler

For better understanding please have a look at the following image.

Dheeraj Patidar

Compiler

A compiler is the system software that translates High-level programming language code into binary format in a single step except for those lines which are having an error. It checks all kinds of limits, ranges, errors, etc. But its execution time is more and occupies the largest part of the memory.

Interpreter

It is the system software that converts programming language code into binary format step by step i.e. line by line compilation takes place. It reads one statement and then executes it until it proceeds further to all the statements. If an error occurs it will stop the compilation process. Development-wise, an interpreter is recommended to use.

Note: The compiler converts the total source code at once by leaving the error lines. Whereas the interpreter is line by line. C & C++ are compiler-based languages. Java / .Net / Python, etc. are compiler-based interpreted languages. The assembler working style is similar to the compiler. 

Assembler

It is the system software that converts assembly language instructions into binary formats.

Operating System

An Operating System (OS) is an interface between a computer user and computer hardware. An Operating system is a software that performs all the basic tasks like file management, memory management, process management, handling input and output, and controlling peripheral devices such as disk drives and Printers.

Loader

A loader is a program that loads the machine codes of a program into system memory. And a locator is a program that assigns specific memory addresses for each machine code of a program that is to be loaded into system memory.

Linker

Usually, a longer program is divided into a number of smaller subprograms called modules. It is easier to develop, test, and debug smaller programs. A linker is a program that links smaller programs to form a single program. 

The linker links the machine codes of the program. Therefore, it accepts the user’s programs after the editor has edited the program, and the compiler has produced machine codes of the program. The Process is called Linking.

Conclusion

I Hope you have got useful information from this article. I will publish more articles about c programming, so keep in touch with me via Facebook page.


< Previous Post

  Next Post >


Leave a Reply

Your email address will not be published. Required fields are marked *