0% found this document useful (0 votes)
19 views8 pages

Introduction To Programming Summary Notes

The document outlines the evolution of computer languages from machine languages in the 1940s to high-level languages in the 1960s. It discusses the characteristics, advantages, and disadvantages of machine languages, assembly languages, and high-level languages, as well as the role of language translators like compilers and interpreters. Additionally, it describes the process of creating and running programs, including writing, compiling, linking, and executing, along with an introduction to algorithms.

Uploaded by

briangetich5262
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
19 views8 pages

Introduction To Programming Summary Notes

The document outlines the evolution of computer languages from machine languages in the 1940s to high-level languages in the 1960s. It discusses the characteristics, advantages, and disadvantages of machine languages, assembly languages, and high-level languages, as well as the role of language translators like compilers and interpreters. Additionally, it describes the process of creating and running programs, including writing, compiling, linking, and executing, along with an introduction to algorithms.

Uploaded by

briangetich5262
Copyright
© All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

COMPUTER LANGUAGES

To write a program for a computer, we must use a computer language.


Over the years computer languages have evolved from machine languages to natural languages.
The following is the summary of computer languages
1940‘s -- Machine Languages
1950‘s -- Symbolic Languages
1960‘s -- High Level Languages

In the earliest days of computers, the only programming languages available were
machine languages. Each computer has its own machine language which is made of streams of
0‘s and 1‘s. The instructions in machine language must be in streams of 0‘s and 1‘s. This is also
referred as binary digits. These are so named as the machine can directly understood the
programs

1) High speed execution


2) The computer can understood instructions immediately
3) No translation is needed.

1) Machine dependent
2) Programming is very difficult
3) Difficult to understand
4) Difficult to write bug free programs
5) Difficult to isolate an error

7
Example Additon of two numbers

2 0010

+3 0011
--- ---------------
5  0101
--- ---------------

Symbolic Languages (or) Assembly Language


In the early 1950‘s Admiral Grace Hopper, a mathematician and naval officer, developed
the concept of a special computer program that would convert programs into machine language.
These early programming languages simply mirrored the machine languages using symbols or
mnemonics to represent the various language instructions. These languages were known as
symbolic languages. Because a computer does not understand symbolic language it must be
translated into the machine language. A special program called an Assembler translates
symbolic code into the machine language. Hence they are called as Assembly language.
Advantages:
1) Easy to understand and use
2) Easy to modify and isolate error
3) High efficiency
4) More control on hardware
Disadvantages:
1) Machine Dependent Language
2) Requires translator
3) Difficult to learn and write programs
4) Slow development time
5) Less efficient
Example:
2 PUSH 2,A
3 PUSH 3,B
+ ADD A,B
5 PRINT C

8
High-Level Languages
The symbolic languages greatly improved programming efficiency they still
required programmers to concentrate on the hardware that they were using working with
symbolic languages was also very tedious because each machine instruction had to be
individually coded. The desire to improve programmer efficiency and to change the focus from
the computer to the problems being solved led to the development of high-level languages.
High-level languages are portable to many different computer allowing the programmer
to concentrate on the application problem at hand rather than the intricacies of the computer.
C A systems implementation Language
C++ C with object oriented enhancements
JAVA Object oriented language for internet and general applications using basic C syntax

Advantages:
1) Easy to write and understand
2) Easy to isolate an error
3) Machine independent language
4) Easy to maintain
5) Better readability
6) Low Development cost
7) Easier to document
8) Portable

1) Needs translator
2) Requires high execution time
3) Poor control on hardware
4) Less efficient
Example: C language
#include<stdio.h>
void main()
{
int a,b,c;
scanf("%d%d%",&a,&b);

9
c=a+b;
printf("%d",c);
}

Difference between Machine, Assembly, High Level Languages


Feature Machine Assembly High Level
Form 0‘s and 1‘s Mnemonic codes Normal English
Machine Dependent Dependent Dependent Independent
Translator Not Needed Needed(Assembler) Needed(Compiler)
Execution Time Less Less High
Languages Only one Different Manufacturers Different Languages
Nature Difficult Difficult Easy
Memory Space Less Less High

Language Translators
These are the programs which are used for converting the programs in one language
into machine language instructions, so that they can be excuted by the computer.

1) Compiler: It is a program which is used to convert the high level language


programs into machine language
2) Assembler: It is a program which is used to convert the assembly level
language programs into machine language
3) Interpreter: It is a program, it takes one statement of a high level language
program, translates it into machine language instruction and then immediately
executes the resulting machine language instruction and so on.
Comparison between a Compiler and Interpreter
COMPILER INTERPRETER
A Compiler is used to compile an entire An interpreter is used to translate each line of
program and an executable program is the program code immediately as it is entered
generated through the object program

10
The executable program is stored in a disk for The executable program is generated in RAM
future use or to run it in another computer and the interpreter is required for each run of
the program
The compiled programs run faster The Interpreted programs run slower
Most of the Languages use compiler A very few languages use interpreters.

CREATING AND RUNNING PROGRAMS


The procedure for turning a program written in C into machine Language. The process is
presented in a straightforward, linear fashion but you shuld recognize that these steps are
repeated many times during development to correct errors and make improvements to the code.
The following are the four steps in this process
1) Writing and Editing the program
2) Compiling the program
3) Linking the program with the required modules
4) Executing the program

11
TEXT EDITOR

COMPILER

Library LINKER

RUNNER

OUTPUT

Sl. No. Phase Name of Code Tools File Extension


1 TextEditor Source Code C Compilers .C
Edit,
Notepad Etc..,
2 Compiler Object Code C Compiler .OBJ
3 Linker Executable C Compiler .EXE
Code
4 Runner Executable C Compiler .EXE
Code

Writing and Editing Programs


The software used to write programs is known as a text editor. A text editor helps
us enter, change and store character data. Once we write the program in the text editor we save it
using a filename stored with an extension of .C. This file is referred as source code file.

12
Compiling Programs
The code in a source file stored on the disk must be translated into machine language.
This is the job of the compiler. The Compiler is a computer program that translates the source
code written in a high-level language into the corresponding object code of the low-level
language. This translation process is called compilation. The entire high level program is
converted into the executable machine code file. The Compiler which executes C programs is
called as C Compiler. Example Turbo C, Borland C, GC etc.,
The C Compiler is actually two separate programs:
The Preprocessor
The Translator
The Preprocessor reads the source code and prepares it for the translator. While preparing the
code, it scans for special instructions known as preprocessor commands. These commands tell
the preprocessor to look for special code libraries. The result of preprocessing is called the
translation unit.
After the preprocessor has prepared the code for compilation, the translator does the
actual work of converting the program into machine language. The translator reads the
translation unit and writes the resulting object module to a file that can then be combined with
other precompiled units to form the final program. An object module is the code in the machine
language.

Linking Programs
The Linker assembles all functions, the program‘s functions and system‘s functions into
one executable program.

Executing Programs
To execute a program we use an operating system command, such as run, to load the
program into primary memory and execute it. Getting the program into memory is the function
of an operating system program known as the loader. It locates the executable program and

13
reads it into memory. When everything is loaded the program takes control and it
begin execution.

ALGORITHM
Algorithm is a finite sequence of instructions, each of which has a clear meaning and
can be performed with a finite amount of effort in a finite length of time. No matter
what the input values may be, an algorithm terminates after executing a finite number
of instructions.
We represent an algorithm using a pseudo language that is a combination of the
constructs of a programming language together with informal English statements.
The ordered set of instructions required to solve a problem is known as an algorithm.
The characteristics of a good algorithm are:
 Precision – the steps are precisely stated (defined).

 Uniqueness – results of each step are uniquely defined and only depend
on the input and the result of the preceding steps.

 Finiteness – the algorithm stops after a finite number of instructions are
executed.

 Input – the algorithm receives input.

 Output – the algorithm produces output.

 Generality – the algorithm applies to a set of inputs.
Example
Q. Write a algorithm to find out number is odd or even?
Ans.
step 1 : start
step 2 : input number
step 3 : rem=number mod 2
step 4 : if rem=0 then
print "number even"
else
print "number odd"
endif
step 5 : stop

You might also like