What is a Computer Programming?

computer programming
  • A program is a set of instructions following the rules of the chosen language.
  • Without programs, computers are useless.
  • A program is like a recipe.
  • It contains a list of ingredients (called variables) and a list of directions (called statements) that tell the computer what to do with the variables.


    Programming Language

    • A vocabulary and set of grammatical rules (syntax) for instructing a computer to perform specific tasks.
    • Programming languages can be used to create computer programs.
    • The term programming language usually refers to high-level languages, such as BASIC, C, C++, COBOL, FORTRAN, Ada, and Pascal.
    • You eventually need to convert your program into machine language so that the computer can understand it.
    • There are two ways to do this:
      • Compile the program
      • Interpret the program

    Compiler

    • Compile is to transform a program written in a high-level programming language from source code into object code.
    • This can be done by using a tool called a compiler.
    •  A compiler reads the whole source code and translates it into a complete machine code program to perform the required tasks which are output as a new file.

    Interpreter

    • An interpreter is a program that executes instructions written in a high-level language.
    • An interpreter reads the source code one instruction or line at a time, converts this line into machine code, and executes it.
    • Computer programming is the process of writing, testing, debugging/troubleshooting, and maintaining the source code of computer programs.
    • This source code is written in a programming language like C++, JAVA, Perl, etc.

    Computer Programmer

    • A programmer is someone who writes computer program.
    • Computer programmers write, test, and maintain programs or software that tell the computer what to do.

    What Skills are Required to Become a Programmer?

    • Programming - Writing computer programs for various purposes.
    • Writing - Communicating effectively with others in writing as indicated by the needs of the audience.
    • Reading Comprehension - Understanding written sentences and paragraphs in work-related documents.
    • Critical Thinking - Using logic and analysis to identify the strengths and weaknesses of different approaches.
    • Computers and Electronics - Knowledge of electric circuit boards, processors, chips, and computer hardware and software, including applications and programming.
    • Mathematics - Knowledge of numbers, their operations, and interrelationships including arithmetic, algebra, geometry, calculus, statistics, and their applications.
    • Oral Expression - The ability to communicate information and ideas in speaking so others will understand.
    • Oral Comprehension - The ability to listen to and understand information and ideas presented through spoken words and sentences.
    • Written Expression - The ability to communicate information and ideas in writing so others will understand.
    • Written Comprehension - The ability to read and understand information and ideas presented in writing.
    • Deductive Reasoning - The ability to apply general rules to specific problems to come up with logical answers. It involves deciding if an answer makes sense.
    • Information Organization - Finding ways to structure or classify multiple pieces of information.

    Generations of Programming Language

    • The first generation languages, or 1GL, are low-level languages that are machine language.
    • The second-generation languages, or 2GL, are also low-level languages that generally consist of assembly languages.
    • The third-generation languages, or 3GL, are high-level languages such as C.
    • The fourth-generation languages, or 4GL, are languages that consist of statements similar to statements in a human language. Fourth-generation languages are commonly used in database programming and scripts.
    • The fifth-generation languages, or 5GL, are programming languages that contain visual tools to help develop a program. A good example of a fifth-generation language is Visual Basic.

    Types of Programming Language

    There are three types of programming language:

    • Machine language (Low-level language)
    • Assembly language (Low-level language)
    • High-level language


    Machine Language

    Low-level languages are closer to the language used by a computer, while high-level languages are closer to human languages.
    Machine language is a collection of binary digits or bits that the computer reads and interprets.
    Machine languages are the only languages understood by computers.
    While easily understood by computers, machine languages are almost impossible for humans to use because they consist entirely of numbers.

    Machine Language

    169 1 160 0 153 0 128 153 0 129 153 130 153 0 131

    200 208 241 96

    High level language

    5 FOR I=1 TO 1000: PRINT "A";: NEXT I


    Example:

    • Let us say that an electric toothbrush has a processor and main memory.
    • The processor can rotate the bristles left and right, and can check the on/off switch.
    • The machine instructions are one byte long, and correspond to the following machine operations:

    Machine Instruction

    Machine Operation

    0000 0000

    Stop

    0000 0001

    Rotate bristles left

    0000 0010

    Rotate bristles right

    0000 0100

     Go back to the start of the program

    0000 1000

    Skip next instruction if a switch is off



    Assembly Language

    A program is written in assembly language consists of a series of instructions mnemonics that correspond to a stream of executable instructions, when translated by an assembler, that can be loaded into memory and executed.
    Assembly languages use keywords and symbols, much like English, to form a programming language but at the same time introduce a new problem.
    The problem is that the computer doesn't understand the assembly code, so we need a way to convert it to machine code, which the computer does understand.
    Assembly language programs are translated into machine language by a program called an assembler.
    • Example:
      • Machine language :

                         10110000 01100001

    • Assembly language :

                             mov a1, #061h

    – Meaning:

    Move the hexadecimal value 61 (97 decimal) into the processor register named "a1".


    High-Level Language

    High-level languages allow us to write computer code using instructions resembling everyday spoken language (for example, print, if, while) which are then translated into machine language to be executed.
    Programs are written in a high-level language needs to be translated into machine language before they can be executed.
    Some programming languages use a compiler to perform this translation and others use an interpreter.

    Examples of High-level Language:

    • ADA
    • C
    • C++
    • JAVA
    • BASIC
    • COBOL
    • PASCAL
    • PHYTON


    Comparison

     

    Machine Language

    Assembly Language

    High-level Languages

    Time to execute

    Since it is the basic language of the computer, it does not require any translation and hence ensures better machine efficiency. This means the programs run faster.

    A program called an ‘assembler’ is required to convert the program into machine language. Thus, it takes longer to execute than a machine language program.

    A program called a compiler or interpreter is required to convert the program into machine language. Thus, it takes more time for a computer to execute.

    Time to develop

    Needs a lot of skill, as instructions are very lengthy and complex. Thus, it takes more time to program.

    Simpler to use than machine language, though instruction codes must be memorized. It takes less time to develop programs as compared to machine language.

    Easiest to use. Takes less time to develop programs and, hence, ensures better program efficiency.

     

    Post a Comment

    0 Comments
    * Please Don't Spam Here. All the Comments are Reviewed by Admin.

    #buttons=(Ok, Go it!) #days=(20)

    Our website uses cookies to enhance your experience. Learn More
    Ok, Go it!