UrbanPro
true

Take BTech Tuition from the Best Tutors

  • Affordable fees
  • 1-1 or Group class
  • Flexible Timings
  • Verified Tutors

Search in

Learning Computer Science

Deepak
16/10/2017 0 0
In many of the IT and Computer science formal courses, I have observed many of the topics are taught as independent unrelated threads. In order to get a deeper insight of the computer science, it is very much essential to understand how these thinking machines work and how the wisdom of many great minds have made it possible.

It is necessary to understand how such a complex machine is designed with a goal that something called software can make it do fascinating stuff. And in general, a computer system is not very much different than a human mind. Our mind stores the information what it receives via sensor organs like eye, ear, skin, tongue which are converted into electrical signals and a huge number of neuron present in brain process the information and finally take some action. Note that the language plays a very important role in the process as we think in our language and communicate with each other using a common language.

In the same way, a computer system also has something equivalent to human mind which is known as a microprocessor and which has its own language in which it thinks and takes actions. Again important thing to note is that the unlike mind it does not decide what to do but it knows if someone has given a set of instructions or command to it along with data then it can execute those commands or instructions on the given dataset and generate the desired results. These instructions can be entered to the microprocessor using its sensors like keyboard, mouse etc and it has just like human brain storage devices to keep information in persistent storage like hard disks, USB devices, SSD etc.

From above it can be related that the instructions given to microprocessor(think Intel x86, AMD) are in the language of the microprocessor and they are known as instruction set of that microprocessor. The simple instructions are like add, subtract, multiply, divide, load, store, move etc but these are only a fraction of the whole set and can be downloaded from the web to understand it at a deeper level. These instructions are nothing but series of bytes(8-bit) and the different bit patterns indicate the role of the instruction which microprocessor understand and then accordingly perform the given tasks, for example, add two numbers.

The software at a very high level is nothing but a collection of these instructions and the order of these instructions is the program logic which a programmer writes using high-level languages like C++, Java, C etc. The instructions are specific to a particular microprocessor and cannot be understood by other microprocessors.

The other interpretation of the above sentence is that any software written in any programming language is finally converted to the sequence of instructions for that processor where it is about to be run. This conversion of a high-level language program to the instruction set of target microprocessor is done by another software called "compiler". The task of the compiler is to first understand the program written in high-level programming language and convert it into the language of the machine i.e. machine instructions. These machine instructions are also provided in a human-readable form known as "Assembly Language". Assembly language is nothing but the sequence of human-readable English characters like add, sub, multiply etc and either compiler or another program known as assembler can convert these English characters to binary bytes or machine instructions. And finally, these binary interactions are given to microprocessor to execute the program logic. Always note that finally on the processor it is always the machine instructions which are binary eg. 11001010 and other than that it does not understand anything.

My next posts will start going deep on how microprocessor work and how it communicates with surroundings like RAM, HDD. Then we will go over the operating system, virtual memory etc in order to understand how a complete system finally work as we operate it using GUI based display units.
0 Dislike
Follow 2

Please Enter a comment

Submit

Other Lessons for You

File Handling in Python - Basic Concept
File (Flat) Handling in Python Types of files in python: 1: Text file: Stores data in the form of characters. Customarily used to store text/string data. 2: Binary file: Stores data in the form of bytes....

Pointers in C/C++
Many students have difficulty in understanding pointers. The best way to understand pointers is through memory representation. Whenever we declare a variable, the computer allocates some amount of memory...
R

Rohan Jain

0 0
0

Hashing Techniques
I. Hashing: 1. Hash Table Representation: Hash table is a data structure used for storing and retrieving data very quickly. Insertion of data in the hash table is based on the key value. Hence every...

Explain The Working Of JVM
1. when we execute the java file, JVM is loaded into memory.2. In JVM, first class loader starts which loads the class into memory, i.e. it divides the code intoRuntime Memory Area.3. Runtime memory consists...

Why do we study so many subjects in Computer Science/IT B.E/B.Tech, which might not be used in our job?
Have you ever wondered, why did you learn so many subjects and what is the use of them, do you need to know them, will you be using them? Well, my answer is the subjects that you study, covers different...
X

Looking for BTech Tuition Classes?

The best tutors for BTech Tuition Classes are on UrbanPro

  • Select the best Tutor
  • Book & Attend a Free Demo
  • Pay and start Learning

Take BTech Tuition with the Best Tutors

The best Tutors for BTech Tuition Classes are on UrbanPro

This website uses cookies

We use cookies to improve user experience. Choose what cookies you allow us to use. You can read more about our Cookie Policy in our Privacy Policy

Accept All
Decline All

UrbanPro.com is India's largest network of most trusted tutors and institutes. Over 55 lakh students rely on UrbanPro.com, to fulfill their learning requirements across 1,000+ categories. Using UrbanPro.com, parents, and students can compare multiple Tutors and Institutes and choose the one that best suits their requirements. More than 7.5 lakh verified Tutors and Institutes are helping millions of students every day and growing their tutoring business on UrbanPro.com. Whether you are looking for a tutor to learn mathematics, a German language trainer to brush up your German language skills or an institute to upgrade your IT skills, we have got the best selection of Tutors and Training Institutes for you. Read more