SlideShare a Scribd company logo
1 of 20
CSC141 Introduction to Computer Programming

Programming
Language
CSC141 Introduction to Computer Programming

Programming Language
• A programming Language is a notational system

intended primarily to facilitate human-machine
interaction.
• The notational is understood both by human and

machine.
• The programming language has Syntax, and

language elements have Semantics.
CSC141 Introduction to Computer Programming

What is a program?
• A program is something that is produced using a

programming Language.
•A

program
Semantics.

is

a

structured

entity

with
CSC141 Introduction to Computer Programming

What is programming?
CSC141 Introduction to Computer Programming

What is programming?
• Programming is a Science:
Because it implement the algorithms describe by
mathematics and science.
• Programming is a Skill:
Because it requires design efforts.
• Programming is an Engineering:
Because it requires a tradeoffs between program
size, speed, time (required for development and
debugging) and maintainability among many
solutions.
• Programming is an Art
It requires creativity and employ imagination.
CSC141 Introduction to Computer Programming

Types of programming
Languages
CSC141 Introduction to Computer Programming

Levels/Generations of Programming Languages
• 1st Generation Programming language (1GL)
• 2nd Generation Programming language (2GL)
• Assembly Language : Mnemonics
• 3rd Generation Programming language (3GL)
• High-Level Languages ; (procedure oriented or

Object Oriented)
• 4th Generation Programming language (4GL)
• Very-High-Level Languages
• 5th Generation Programming Language
• Natural Languages

CSC141 Introduction to Computer Programming

• Machine Language: 0s or 1s
CSC141 Introduction to Computer Programming

Machine language (1GL)
• The lowest level of language.
• The

language used to program the firstgeneration computers.
• The instructions in 1GL are made of binary
numbers, represented by 1s and 0s.
• 1s and 0s correspond to the on and off states of
electrical switches.
• Suitable for the understanding of the machine but
very much difficult to interpret and learn by the
human programmer.
CSC141 Introduction to Computer Programming

Assembly language (2GL)
• Low-level language that allows a programmer to

use abbreviations or easily remembered words
instead of numbers.
• These Observations are called Mnemonics. These
Mnemonic are Opcode and Operands
For Example:
ADD AX, BX
MOV CX, AX
INC CX
Op-code; ADD, MOV, INC
Operands AX, BX,CX
CSC141 Introduction to Computer Programming

Assembly language (2GL)
• Programmer can write instructions faster but it is

still not an easy language to learn.
• Drawback: The language is specific to a
particular processor family and environment.
(Machine Dependent Language)
• Assembler – A program that translates the
assembly language program into machine
language.
CSC141 Introduction to Computer Programming

High Level languages (3GL)
•A

High-Level Language is an English-like
language.
• It is a refinement of a second-generation
programming language.
• It allowed users to write in familiar notation, rather
than numbers or abbreviations.
• Most High-level languages are not Machine
Dependent.
• Translator for High-level languages is either a
Compiler or an Interpreter.
• Examples of High-level languages:
―FORTRON
―COBOL
―BASIC
―C and C++
CSC141 Introduction to Computer Programming

Very-High-Level Languages (4GL)
• 4GLs

are much more user-oriented and allow
programmers to develop programs with fewer commands
compared with 3GLs.
• Non-Procedural Language; Programmers don’t have to
specify all the programming logic, only tell the computer
what they want done.
• Saves a lot of time.
• 4GLs
consist
of
report
generators,
query
languages, application generators, and interactive
database management system
• For example:
• RPG III (Report Generator)
• SQL (Structured Query Language)
• NOMAD and FOCUS (DBMS)
CSC141 Introduction to Computer Programming

Natural Languages (5GL)
• Two types
• Ordinary Human Languages; like English.

• Programming

language that use human
language to give people a more natural
connection with computers.
• 5GLs are designed to make the computer solve
a given problem without the programmer.
• Natural languages are part of the field of study
known as Artificial Intelligence.
• Develop machines to emulate human-like
qualities
such
as
learning, reasoning, communicating, seeing and
CSC141 Introduction to Computer Programming

Evolution of Programming
CSC141 Introduction to Computer Programming

Programming Paradigms
A number of programming paradigms are:
• Procedural/Imperative Programming
• Functional Programming
• Declarative Programming
• Object Oriented Programming
• Event driven Programming
• Parallel Programming
CSC141 Introduction to Computer Programming

Procedural or Imperative:
• Imperative programs emphasize “tell what to do”
• When we say “ Do this, then do this, then do

this, and if xx, do this, otherwise do this” This is
imperative programming:
• They focus on evaluating expressions and storing
results in a variable.
• The most common imperative language consists
of statements such as:
a = 10;
b = 5;
c = a + b;
CSC141 Introduction to Computer Programming

Procedural or Imperative: … Contd
Example of imperative languages are:
• Assembly language
• COBOL
• Pascal
• C and C++
CSC141 Introduction to Computer Programming

Is there any Best Programming Language?
• Programming Language is probably used most

efficient if it is well suited for a specific task.
• For example
• Business applications are often written in
COBOL.
• Beginners to programming use BASIC.
• Scientific programming is often undertaken with
either FORTON, PASCAL or C.
CSC141 Introduction to Computer Programming

Language Evaluation Criteria
• Readability:

measure programmer ease in reading source
code
• Orthogonality: include context sensitive restrictions.
• Applicability: this is best suited as “use the right tool for the
job”
• Writ ability:
includes simplicity and orthogonality and
support for the abstraction
• Reliability:
include type checking and inspection handling
• Cost:
includes learning and writing cost, productivity,
compilation cost, execution cost, debugging
cost etc.
• Other:
flexibility of control statements and availability
of data structures
CSC141 Introduction to Computer Programming

History of C Language
• A general-purpose computer programming language.
• Developed between 1969 and 1973 by Dennis Ritchie at

•
•

•
•
•

the Bell Telephone Laboratories for use with the UNIX
operating system.
Descendant of Ken Thompson’s language “B”
The first C programming language standard was
published in 1978 as “The C Programming Language” by
Kernighan and Ritchie (K&R).
"ANSI C" was the second C programming language
standard published in 1989.
ISO approved “ANSI C” in 1990.
The latest stable release is C11.

More Related Content

What's hot

Computer languages
Computer languagesComputer languages
Computer languagesAqdasNoor
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programmingNSU-Biliran Campus
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programmingNeeru Mittal
 
Programming languages
Programming languagesProgramming languages
Programming languagesAsmasum
 
Introduction Programming Languages
Introduction Programming LanguagesIntroduction Programming Languages
Introduction Programming LanguagesManish Kharotia
 
Programming Paradigm & Languages
Programming Paradigm & LanguagesProgramming Paradigm & Languages
Programming Paradigm & LanguagesGaditek
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programmingSangheethaa Sukumaran
 
Problem Solving and Programming
Problem Solving and ProgrammingProblem Solving and Programming
Problem Solving and ProgrammingSelvaraj Seerangan
 
Basic Computer Programming
Basic Computer ProgrammingBasic Computer Programming
Basic Computer ProgrammingAllen de Castro
 
Programming language
Programming languageProgramming language
Programming languageRajThakuri
 
Evolution of Programming Languages
Evolution of Programming LanguagesEvolution of Programming Languages
Evolution of Programming LanguagesSayanee Basu
 
4 evolution-of-programming-languages
4 evolution-of-programming-languages4 evolution-of-programming-languages
4 evolution-of-programming-languagesRohit Shrivastava
 
Programming Fundamentals lecture 2
Programming Fundamentals lecture 2Programming Fundamentals lecture 2
Programming Fundamentals lecture 2REHAN IJAZ
 
Programming Fundamental Presentation
Programming Fundamental PresentationProgramming Fundamental Presentation
Programming Fundamental Presentationfazli khaliq
 

What's hot (20)

Computer languages
Computer languagesComputer languages
Computer languages
 
Introduction to programming languages
Introduction to programming languagesIntroduction to programming languages
Introduction to programming languages
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
Computer languages
Computer languagesComputer languages
Computer languages
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Introduction Programming Languages
Introduction Programming LanguagesIntroduction Programming Languages
Introduction Programming Languages
 
Programming languages
Programming languagesProgramming languages
Programming languages
 
Programming Paradigm & Languages
Programming Paradigm & LanguagesProgramming Paradigm & Languages
Programming Paradigm & Languages
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
Computer Programming
Computer ProgrammingComputer Programming
Computer Programming
 
Problem Solving and Programming
Problem Solving and ProgrammingProblem Solving and Programming
Problem Solving and Programming
 
Presentation on Programming Languages.
Presentation on Programming Languages.Presentation on Programming Languages.
Presentation on Programming Languages.
 
Computer Languages
Computer Languages Computer Languages
Computer Languages
 
Basic Computer Programming
Basic Computer ProgrammingBasic Computer Programming
Basic Computer Programming
 
Programming language
Programming languageProgramming language
Programming language
 
Evolution of Programming Languages
Evolution of Programming LanguagesEvolution of Programming Languages
Evolution of Programming Languages
 
4 evolution-of-programming-languages
4 evolution-of-programming-languages4 evolution-of-programming-languages
4 evolution-of-programming-languages
 
Programming Fundamentals lecture 2
Programming Fundamentals lecture 2Programming Fundamentals lecture 2
Programming Fundamentals lecture 2
 
Programming Fundamental Presentation
Programming Fundamental PresentationProgramming Fundamental Presentation
Programming Fundamental Presentation
 

Viewers also liked

Powerpoint on Software Concept (ClassXI)
Powerpoint on Software Concept (ClassXI)Powerpoint on Software Concept (ClassXI)
Powerpoint on Software Concept (ClassXI)Fernando Torres
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programmingNoel Malle
 
Consumer Product Safety Commission3
Consumer Product Safety Commission3Consumer Product Safety Commission3
Consumer Product Safety Commission3ahmad bassiouny
 
Class Presentation on WhatsApp
Class Presentation on WhatsAppClass Presentation on WhatsApp
Class Presentation on WhatsAppShadman Chowdhury
 
Whatsapp PPT Presentation
Whatsapp PPT PresentationWhatsapp PPT Presentation
Whatsapp PPT PresentationVOCCE ICT
 
Computer programmer
Computer programmerComputer programmer
Computer programmerajt525
 
Computer programmer job information
Computer programmer job informationComputer programmer job information
Computer programmer job informationChrisinCT
 
Teaching Excel
Teaching ExcelTeaching Excel
Teaching Excelsam ran
 
Ppt on consumers rights
Ppt on consumers rightsPpt on consumers rights
Ppt on consumers rightsSatish Kumar
 
Computer hardware component. ppt
Computer hardware component. pptComputer hardware component. ppt
Computer hardware component. pptNaveen Sihag
 
computer software
computer softwarecomputer software
computer softwareAhsan Khan
 
Parts of a Computer
Parts of a ComputerParts of a Computer
Parts of a ComputerMatt Shea
 

Viewers also liked (20)

Powerpoint on Software Concept (ClassXI)
Powerpoint on Software Concept (ClassXI)Powerpoint on Software Concept (ClassXI)
Powerpoint on Software Concept (ClassXI)
 
Introduction to computer programming
Introduction to computer programmingIntroduction to computer programming
Introduction to computer programming
 
Consumers' welfare and protection
Consumers' welfare and protectionConsumers' welfare and protection
Consumers' welfare and protection
 
Consumer Product Safety Commission3
Consumer Product Safety Commission3Consumer Product Safety Commission3
Consumer Product Safety Commission3
 
Excel Lesson 1: Excel Basics
Excel Lesson 1: Excel BasicsExcel Lesson 1: Excel Basics
Excel Lesson 1: Excel Basics
 
Computer Programming - Lecture 1
Computer Programming - Lecture 1Computer Programming - Lecture 1
Computer Programming - Lecture 1
 
Class Presentation on WhatsApp
Class Presentation on WhatsAppClass Presentation on WhatsApp
Class Presentation on WhatsApp
 
Whatsapp PPT Presentation
Whatsapp PPT PresentationWhatsapp PPT Presentation
Whatsapp PPT Presentation
 
Consumerism
ConsumerismConsumerism
Consumerism
 
Computer programmer
Computer programmerComputer programmer
Computer programmer
 
Computer programmer job information
Computer programmer job informationComputer programmer job information
Computer programmer job information
 
Programmer ppt
Programmer pptProgrammer ppt
Programmer ppt
 
Teaching Excel
Teaching ExcelTeaching Excel
Teaching Excel
 
Microsoft Excel Basics
Microsoft Excel BasicsMicrosoft Excel Basics
Microsoft Excel Basics
 
Ppt on consumers rights
Ppt on consumers rightsPpt on consumers rights
Ppt on consumers rights
 
whatsapp ppt
whatsapp pptwhatsapp ppt
whatsapp ppt
 
Computer hardware component. ppt
Computer hardware component. pptComputer hardware component. ppt
Computer hardware component. ppt
 
computer software
computer softwarecomputer software
computer software
 
Consumer rights
Consumer rightsConsumer rights
Consumer rights
 
Parts of a Computer
Parts of a ComputerParts of a Computer
Parts of a Computer
 

Similar to Introduction to Programming Languages

Similar to Introduction to Programming Languages (20)

Programming Language
Programming LanguageProgramming Language
Programming Language
 
Programming basics
Programming basicsProgramming basics
Programming basics
 
Introduction to programming
Introduction to programmingIntroduction to programming
Introduction to programming
 
Python-L1.pptx
Python-L1.pptxPython-L1.pptx
Python-L1.pptx
 
programming.pptx
programming.pptxprogramming.pptx
programming.pptx
 
sege.pdf
sege.pdfsege.pdf
sege.pdf
 
Introduction to computer programming
Introduction to computer programming Introduction to computer programming
Introduction to computer programming
 
PROG0101_CH02.pptx
PROG0101_CH02.pptxPROG0101_CH02.pptx
PROG0101_CH02.pptx
 
Compilers.pptx
Compilers.pptxCompilers.pptx
Compilers.pptx
 
Programming Languages Categories / Programming Paradigm By: Prof. Lili Saghafi
Programming Languages Categories / Programming Paradigm By: Prof. Lili Saghafi Programming Languages Categories / Programming Paradigm By: Prof. Lili Saghafi
Programming Languages Categories / Programming Paradigm By: Prof. Lili Saghafi
 
Introduction to Computer Programming
Introduction to Computer ProgrammingIntroduction to Computer Programming
Introduction to Computer Programming
 
Ppl 13 july2019
Ppl 13 july2019Ppl 13 july2019
Ppl 13 july2019
 
2. pl domain
2. pl domain2. pl domain
2. pl domain
 
English de lenguaje de programacion
English de lenguaje de programacionEnglish de lenguaje de programacion
English de lenguaje de programacion
 
System softare
System softareSystem softare
System softare
 
Introduction_to_Programming.pptx
Introduction_to_Programming.pptxIntroduction_to_Programming.pptx
Introduction_to_Programming.pptx
 
Python-unit -I.pptx
Python-unit -I.pptxPython-unit -I.pptx
Python-unit -I.pptx
 
Presentation-1.pptx
Presentation-1.pptxPresentation-1.pptx
Presentation-1.pptx
 
C++ programming languages lectures
C++ programming languages lectures C++ programming languages lectures
C++ programming languages lectures
 
X-CS-8.0 Programming in C Language 2022-2023.pdf
X-CS-8.0 Programming in C Language 2022-2023.pdfX-CS-8.0 Programming in C Language 2022-2023.pdf
X-CS-8.0 Programming in C Language 2022-2023.pdf
 

More from educationfront

Personality Development in Islam
Personality Development in IslamPersonality Development in Islam
Personality Development in Islameducationfront
 
Discussing Fundamentals of C
Discussing Fundamentals of CDiscussing Fundamentals of C
Discussing Fundamentals of Ceducationfront
 
Fundamentals of Computer
Fundamentals of Computer Fundamentals of Computer
Fundamentals of Computer educationfront
 
Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)educationfront
 

More from educationfront (7)

Personality Development in Islam
Personality Development in IslamPersonality Development in Islam
Personality Development in Islam
 
Discussing Fundamentals of C
Discussing Fundamentals of CDiscussing Fundamentals of C
Discussing Fundamentals of C
 
C Programming
C ProgrammingC Programming
C Programming
 
Fundamentals of Computer
Fundamentals of Computer Fundamentals of Computer
Fundamentals of Computer
 
Fcp lecture 01
Fcp lecture 01Fcp lecture 01
Fcp lecture 01
 
Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)Punjab Public Service Commission (PPSC)
Punjab Public Service Commission (PPSC)
 
Action research
Action researchAction research
Action research
 

Recently uploaded

Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityGeoBlogs
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactdawncurless
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfagholdier
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Disha Kariya
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...EduSkills OECD
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactPECB
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.MateoGardella
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docxPoojaSen20
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introductionMaksud Ahmed
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDThiyagu K
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdfQucHHunhnh
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeThiyagu K
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxVishalSingh1417
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfJayanti Pande
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxAreebaZafar22
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsTechSoup
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxheathfieldcps1
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfAyushMahapatra5
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfChris Hunter
 

Recently uploaded (20)

Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
Accessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impactAccessible design: Minimum effort, maximum impact
Accessible design: Minimum effort, maximum impact
 
Holdier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdfHoldier Curriculum Vitae (April 2024).pdf
Holdier Curriculum Vitae (April 2024).pdf
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"Mattingly "AI & Prompt Design: The Basics of Prompt Design"
Mattingly "AI & Prompt Design: The Basics of Prompt Design"
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.Gardella_Mateo_IntellectualProperty.pdf.
Gardella_Mateo_IntellectualProperty.pdf.
 
PROCESS RECORDING FORMAT.docx
PROCESS      RECORDING        FORMAT.docxPROCESS      RECORDING        FORMAT.docx
PROCESS RECORDING FORMAT.docx
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
1029-Danh muc Sach Giao Khoa khoi 6.pdf
1029-Danh muc Sach Giao Khoa khoi  6.pdf1029-Danh muc Sach Giao Khoa khoi  6.pdf
1029-Danh muc Sach Giao Khoa khoi 6.pdf
 
Measures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and ModeMeasures of Central Tendency: Mean, Median and Mode
Measures of Central Tendency: Mean, Median and Mode
 
Unit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptxUnit-IV; Professional Sales Representative (PSR).pptx
Unit-IV; Professional Sales Representative (PSR).pptx
 
Web & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdfWeb & Social Media Analytics Previous Year Question Paper.pdf
Web & Social Media Analytics Previous Year Question Paper.pdf
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Introduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The BasicsIntroduction to Nonprofit Accounting: The Basics
Introduction to Nonprofit Accounting: The Basics
 
The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Class 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdfClass 11th Physics NEET formula sheet pdf
Class 11th Physics NEET formula sheet pdf
 
Making and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdfMaking and Justifying Mathematical Decisions.pdf
Making and Justifying Mathematical Decisions.pdf
 

Introduction to Programming Languages

  • 1. CSC141 Introduction to Computer Programming Programming Language
  • 2. CSC141 Introduction to Computer Programming Programming Language • A programming Language is a notational system intended primarily to facilitate human-machine interaction. • The notational is understood both by human and machine. • The programming language has Syntax, and language elements have Semantics.
  • 3. CSC141 Introduction to Computer Programming What is a program? • A program is something that is produced using a programming Language. •A program Semantics. is a structured entity with
  • 4. CSC141 Introduction to Computer Programming What is programming?
  • 5. CSC141 Introduction to Computer Programming What is programming? • Programming is a Science: Because it implement the algorithms describe by mathematics and science. • Programming is a Skill: Because it requires design efforts. • Programming is an Engineering: Because it requires a tradeoffs between program size, speed, time (required for development and debugging) and maintainability among many solutions. • Programming is an Art It requires creativity and employ imagination.
  • 6. CSC141 Introduction to Computer Programming Types of programming Languages
  • 7. CSC141 Introduction to Computer Programming Levels/Generations of Programming Languages • 1st Generation Programming language (1GL) • 2nd Generation Programming language (2GL) • Assembly Language : Mnemonics • 3rd Generation Programming language (3GL) • High-Level Languages ; (procedure oriented or Object Oriented) • 4th Generation Programming language (4GL) • Very-High-Level Languages • 5th Generation Programming Language • Natural Languages CSC141 Introduction to Computer Programming • Machine Language: 0s or 1s
  • 8. CSC141 Introduction to Computer Programming Machine language (1GL) • The lowest level of language. • The language used to program the firstgeneration computers. • The instructions in 1GL are made of binary numbers, represented by 1s and 0s. • 1s and 0s correspond to the on and off states of electrical switches. • Suitable for the understanding of the machine but very much difficult to interpret and learn by the human programmer.
  • 9. CSC141 Introduction to Computer Programming Assembly language (2GL) • Low-level language that allows a programmer to use abbreviations or easily remembered words instead of numbers. • These Observations are called Mnemonics. These Mnemonic are Opcode and Operands For Example: ADD AX, BX MOV CX, AX INC CX Op-code; ADD, MOV, INC Operands AX, BX,CX
  • 10. CSC141 Introduction to Computer Programming Assembly language (2GL) • Programmer can write instructions faster but it is still not an easy language to learn. • Drawback: The language is specific to a particular processor family and environment. (Machine Dependent Language) • Assembler – A program that translates the assembly language program into machine language.
  • 11. CSC141 Introduction to Computer Programming High Level languages (3GL) •A High-Level Language is an English-like language. • It is a refinement of a second-generation programming language. • It allowed users to write in familiar notation, rather than numbers or abbreviations. • Most High-level languages are not Machine Dependent. • Translator for High-level languages is either a Compiler or an Interpreter. • Examples of High-level languages: ―FORTRON ―COBOL ―BASIC ―C and C++
  • 12. CSC141 Introduction to Computer Programming Very-High-Level Languages (4GL) • 4GLs are much more user-oriented and allow programmers to develop programs with fewer commands compared with 3GLs. • Non-Procedural Language; Programmers don’t have to specify all the programming logic, only tell the computer what they want done. • Saves a lot of time. • 4GLs consist of report generators, query languages, application generators, and interactive database management system • For example: • RPG III (Report Generator) • SQL (Structured Query Language) • NOMAD and FOCUS (DBMS)
  • 13. CSC141 Introduction to Computer Programming Natural Languages (5GL) • Two types • Ordinary Human Languages; like English. • Programming language that use human language to give people a more natural connection with computers. • 5GLs are designed to make the computer solve a given problem without the programmer. • Natural languages are part of the field of study known as Artificial Intelligence. • Develop machines to emulate human-like qualities such as learning, reasoning, communicating, seeing and
  • 14. CSC141 Introduction to Computer Programming Evolution of Programming
  • 15. CSC141 Introduction to Computer Programming Programming Paradigms A number of programming paradigms are: • Procedural/Imperative Programming • Functional Programming • Declarative Programming • Object Oriented Programming • Event driven Programming • Parallel Programming
  • 16. CSC141 Introduction to Computer Programming Procedural or Imperative: • Imperative programs emphasize “tell what to do” • When we say “ Do this, then do this, then do this, and if xx, do this, otherwise do this” This is imperative programming: • They focus on evaluating expressions and storing results in a variable. • The most common imperative language consists of statements such as: a = 10; b = 5; c = a + b;
  • 17. CSC141 Introduction to Computer Programming Procedural or Imperative: … Contd Example of imperative languages are: • Assembly language • COBOL • Pascal • C and C++
  • 18. CSC141 Introduction to Computer Programming Is there any Best Programming Language? • Programming Language is probably used most efficient if it is well suited for a specific task. • For example • Business applications are often written in COBOL. • Beginners to programming use BASIC. • Scientific programming is often undertaken with either FORTON, PASCAL or C.
  • 19. CSC141 Introduction to Computer Programming Language Evaluation Criteria • Readability: measure programmer ease in reading source code • Orthogonality: include context sensitive restrictions. • Applicability: this is best suited as “use the right tool for the job” • Writ ability: includes simplicity and orthogonality and support for the abstraction • Reliability: include type checking and inspection handling • Cost: includes learning and writing cost, productivity, compilation cost, execution cost, debugging cost etc. • Other: flexibility of control statements and availability of data structures
  • 20. CSC141 Introduction to Computer Programming History of C Language • A general-purpose computer programming language. • Developed between 1969 and 1973 by Dennis Ritchie at • • • • • the Bell Telephone Laboratories for use with the UNIX operating system. Descendant of Ken Thompson’s language “B” The first C programming language standard was published in 1978 as “The C Programming Language” by Kernighan and Ritchie (K&R). "ANSI C" was the second C programming language standard published in 1989. ISO approved “ANSI C” in 1990. The latest stable release is C11.