Advice On Computer Concepts - Programming Using C : Lesson 1
posted on 07/30/2009
In this series of articles we will focus on the programming language C and how to learn it in easy to follow steps.
Programming Languages
Computers are general purpose machines that can do a wide variety of things ranging from word processing (data entry) to showing you movies and browsing the internet. It also does other productive job like accounting and helps to play games too. What makes computer so generic? It is the ability to tune it to our needs and the concept of programming.
Programming started right with the computer with lower assembly level languages. People would directly code in binary or small opcodes representing the binary codes. This was not user friendly and most users had to remember the huge list of commands to get the things done.
Later higher level languages started appearing like Basic, Fortran and Pascal which had higher constructs for easier programming. These higher level options were easier to remember and common across many programs and hence they could also be reused. Maintenance (changing the code for fixing some problems or adding new features) was easier on a higher level language.
Advent of C
C was originally conceived by Dennis Ritchie in Bell labs when he required a language to program the Unix based operating system. What started as a throw away concept evolved into a proper programming language that is still widely in use in many interesting areas of application.
C Basics
C is a high level programming language. It is a structured programming language since it has a proper control flow. The high level concepts like a 'if' and 'while' loops make is a proper structured language. C is also very open in its implementation that a lot of the nuances are left to the compiler or run time implementation. These are termed as compiler dependent or implementation dependent. C is a loosely typed language in that the concept of types of data is not rigid and one type can be transformed to another without much programming.
C also has the ability to switch to assembly level language and back to high level language within a given program so that the speed of assembly programming is harnessed as and when required. This makes C more of an intermediate level language rather than a true high level language.
C also provides easy access to memory through the concept of pointers and thus helps to easily manipulate memory including the display memory. This flexibility comes at a cost since if the programming is not done properly, it could be harmful to the computer.
We will start understanding the concepts of C in the upcoming articles.



Comment on this article
You must be logged in to post comments.
Previous Comments