Interaction of a Program with Hardware

When a Programmer wrote a program, then how it is feeded to the computer and how it actually works?
So, this article is about the process how the program code that we write in any text editor is feeded to computer as we all know computer works on only two numbers that is 0 or 1.

Let’s talk about it abstraction by abstraction starting from writing code in any text editor.

  1. We write code in text editor using any language like C++, JAVA, Python etc.
  2. This code is given to the compiler and it actually converts it to assembly code that is very close to machine hardware as it depend on instruction set which is then converted to binary that is 0 and 1 which actually represent digital voltage feeded to transistors inside the chip.
  3. Now we have voltages which is actually required to run the hardware.These voltages actually connect the correct circuitry inside the chip and perform that specific task for example addition, subtraction etc .All these operations are done by combination of little transistors if we go into low level or flip-flops which are combination of gates and gates are combination of transistors. So, it all started with the invention of transistors.
  4. The chip has lot of circuits inside it to perform various task like arithmetic nd logical task.
    The computer hardware also contain RAM which is another chip which can store data temporary and Hard disk which can permanently store data.

  5. Operating system is also responsible to feed the software to the right hardware like keyboard, mouse, screen etc.

The following picture depict the whole process:



My Personal Notes arrow_drop_up

Tech Enthusiast, hardworking with the ability to learn new skills within a limited amount of time Passionate about learning new technologies and building something better out of them Also a team player with good communication skills The software is changing the world so fast and I love being a part

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.