Language is a medium of communication. There are thousands of languages spoken all over the world. But we, as humans, communicate in specific languages. Some may speak and understand Italian, whereas others might not understand it. They might speak Spanish, French, or some other language. So, we consider English as the international language for communication. Now, think about how we, as humans, face problems communicating with one another. How do we communicate with computers or machines?
When we search for a YouTube video by typing in a human language, how does the computer understand it?
In general, there are two types of languages:
Low-Level Language
High-Level Language
Low-Level Language: This type of language is not easily understandable by humans.
It has two types:
- Machine Language: We know that computers understand only binary digits. Therefore, machine language consists only of binary code. For example: 0110011101. This code is very complex for humans to understand. Machine language is also hard to debug and is not portable, meaning that a program written for one device won’t necessarily work on another device. It does not require any translator. If you have seen some United Nations speeches where the speaker is speaking in their own mother tongue, how do other people understand their speech? A translator translates the whole speech into English. For machine language, no translator is needed, as it is already in binary and the computer doesn’t require any translation.
- Assembly Language: This language uses a few mnemonics and specific keywords that perform certain functions on the machine. However, it is still not very human-readable. Assembly language includes words like ADD and SUM, which also need to be translated. This translation is done by an assembler.
High-Level Language: These programming languages are human-readable, making it easier for us to understand what we are writing. For example: print(“Hello World”). This type of language is easy to debug and portable, eliminating the need to write different code for different machines. Python and C are examples of high-level languages. However, high-level languages need to be translated into machine-readable code, which is done by a compiler or interpreter.