As a newbie programmer, you will be faced with a number of decisions regarding your chosen career (or passion) path. In particular, you will need to focus on the tools you require to begin your journey, hone your skills, and eventually become an experienced programmer.
Now, once you have the right laptop in hand, your next step would be to select an operating system. Since many of the OS available are typically geared towards more qualified programmers, this can be a bit of a tough choice. To make it easier for you, here are some of the OS suitable for someone with your skill level:
High level language is abbreviated as HLL. High level languages are similar to the human language. Unlike low level languages, high level languages are programmers friendly, easy to code, debug and maintain.
High level language provides 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.
Low level language abbreviated as LLL, are languages close to the machine level instruction set. They provide less or no abstraction from the hardware. A low-level programming language interacts directly with the registers and memory. Since, instructions written in low level languages are machine dependent. Programs developed using low level languages are machine dependent and are not portable.
Thousands of programming languages have been written till date. Each for some specific purpose. Some programming languages provide less or no abstraction from the hardware. Whereas some provide higher abstraction. To separate programming languages on the basis of level of abstraction from hardware, they are classified into various categories.
The world of computer science, programming and software development starts here. Before I formally define programming language. Let’s dissect it. Programming language is made of two parts “programming” and “language”. We already learn't about what is programming. Here we will learn about language. Think for a while and try to define what language means.
A computer program goes through many phases from its development to execution. From the human readable format (source code) to binary encoded computer instructions (machine code). Here in this section, I will be explaining the different phases of a program during its entire lifespan.
Compiler and interpreter both are tools to translate source code from high-level language to machine language. Both does the same task of translation. But the working mechanism of compiler is different from interpreter. Below are some differences between compilers and interpreters
An interpreter is a program that translates source code written in high-level language to machine code. It is similar to compiler and does the same task of translation from high-level to low-level language. Despite of its similarity, the working mechanism of interpreter and compiler are different.
An interpreter does not translate whole code at once like compiler. Rather, is reads entire source code at once. Translates single instruction to machine code or some intermediate code. Then executes the translated machine code instruction immediately and translates next instruction if needed.
A Compiler is a program or set of programs that converts source code written in a high-level language to low-level language (assembly language or machine language). A programming language can have many compilers. For example – GCC C, Turbo C, Quick C etc. are different compilers for C programming language.