ALGORITHMS AND PROGRAMMING LANGUAGES Lecture 5: Algorithms and programming languages Networks and Communication Department 1.

Slides:



Advertisements
Similar presentations
CHAPTER 2 GC101 Program’s algorithm 1. COMMUNICATING WITH A COMPUTER  Programming languages bridge the gap between human thought processes and computer.
Advertisements

Computers Are Your Future
101.  When you communicate with people you use a language that you both understand.  The trick is that the computer does not speak English.  To communicate.
PROGRAMMING Introduction To Programming Definition Types Of Programming Languages Programming Language Paradigm Translator
Professor Michael J. Losacco CIS 1150 – Introduction to Computer Information Systems Programming and Languages Chapter 13.
2 We need programming languages to communicate with a computer. The two broad classifications of programming languages are: Low-level and High- level.
Programming Creating programs that run on your PC
McGraw-Hill/Irwin Copyright © 2008 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 14 Programming and Languages.
Computer Concepts 5th Edition Parsons/Oja Page 546 CHAPTER 11 Software Engineering Section A PARSONS/OJA Computer Programming.
Computers: Tools for an Information Age
Chapter 16 Programming and Languages: Telling the Computer What to Do.
An Introduction to Programming with C++ Fifth Edition Chapter 1 An Introduction to Programming.
CS 104 Introduction to Computer Science and Graphics Problems Software and Programming Language (2) Programming Languages 09/26/2008 Yang Song (Prepared.
Programming and Languages Chapter Competencies (Page 1 of 2) Describe the six steps of programming Discuss design tools including top-down design,
McGraw-Hill Technology Education © 2006 by the McGraw-Hill Companies, Inc. All rights reserved CHAPTER PROGRAMMING AND LANGUAGES.
SOFTWARE SYSTEMS SOFTWARE APPLICATIONS SOFTWARE PROGRAMMING LANGUAGES.
CSC141 - INTRODUCTION TO COMPUTER PROGRAMMING CREDIT HOURS 4(3,1) Teacher: AHMED MUMTAZ MUSTEHSAN.
Your Interactive Guide to the Digital World Discovering Computers 2012.
Introduction to Programming End Show. Resource Team R.P Ranjan-Lecturer, SPICTEC, Galle. W.M.A.S. Wijesekara-Centre manager,CRC Hali-Ela H.P.U.S Indra.
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
CHAPTER 4: INTRODUCTION TO COMPUTER ORGANIZATION AND PROGRAMMING DESIGN Lec. Ghader Kurdi.
Computers Are Your Future Tenth Edition Chapter 11: Programming Languages & Program Development Copyright © 2009 Pearson Education, Inc. Publishing as.
Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.
Programming Languages: Telling the Computers What to Do Chapter 16.
Introduction to Computer Programming itc-314
Programming Languages CPS120: Introduction to Computer Science Lecture 5.
Welcome to OBJECT ORIENTED PROGRAMMIN Date: 10/09/2014 Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
UNIVERSITI TENAGA NASIONAL “Generates Professionals” CHAPTER 4 : Part 2 INTRODUCTION TO SOFTWARE DEVELOPMENT: PROGRAMMING & LANGUAGES.
Programming Language Rico Yu. Levels of Programming Languages 1.Low level languages 2.High level languages.
Evolution of Programming Languages Generations of PLs.
An Introduction to Programming with C++ Sixth Edition
Programming Languages 1.07a.  A computer program is a series of instructions that direct a computer to perform a certain task.  A programming language.
TMF1013 : Introduction To Computing Lecture 1 : Fundamental of Computer ComputerFoudamentals.
Invitation to Computer Science 5 th Edition Chapter 6 An Introduction to System Software and Virtual Machine s.
Discovering Computers 2009 Chapter 13 Programming Languages and Program Development.
Computer Programs and Programming Languages What are low-level languages and high-level languages? High-level language Low-level language Machine-dependent.
CSC425 - Introduction To Computer Programming 1. 2 Generation Of Programming Languages A set of rules that telling a computer what to do. There are over.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Chapter 1 Introduction Chapter 1 Introduction 1 st Semester 2015 CSC 1101 Computer Programming-1.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
Lecture 11: 10/1/2002CS149D Fall CS149D Elements of Computer Science Ayman Abdel-Hamid Department of Computer Science Old Dominion University Lecture.
Module 4 Part 2 Introduction To Software Development : Programming & Languages Introduction To Software Development : Programming & Languages.
PROGRAMMING LANGUAGES
FOUNDATION IN INFORMATION TECHNOLOGY (CS-T-101) TOPIC : INFORMATION SYSTEM – SOFTWARE.
CS-303 Introduction to Programming
5.0 PROGRAMMING Duration: 10 weeks Prepared by Ong Lay Peng Copyright © 2007.
CONCEPTS OF PROGRAMMING LANGUAGES
Machine Machine language is PL in which program instructions are written in strings of 0s and 1s.The computer circuitry is wired in a manner that it can.
Slide 8-1 Chapter 8 Terms Programming Languages Introduction to Information Systems Judith C. Simon.
Introduction to Computer Programming itc-314 Lecture 04.
Lecture-8 Introduction to computer languages.
Skill Area 311 Part B. Lecture Overview Assembly Code Assembler Format of Assembly Code Advantages Assembly Code Disadvantages Assembly Code High-Level.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Welcome to OBJECT ORIENTED PROGRAMMING Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
GROUP 2 NAME :  AZMYLL BIN ARSHAD  (18DNS14F2014)  MARYAM JAMILAH BINTI RAHIM  (18ENS14F2004)  SURAYA BINTI MOHAMAD  (18DNS14F2005)  MUHAMMAD SALEH.
CSC141 Introduction to Computer Programming Programming Language.
Programming Languages
Programming Languages Salihu Ibrahim Dasuki (PhD) CSC102 INTRODUCTION TO COMPUTER SCIENCE.
PROGRAMMING (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
Introduction to computer software. Programming the computer Program, is a sequence of instructions, written to perform a specified task on a computer.
Game programming 1.
Introduction to Software
Programming Languages
Operating System Interface between a user and the computer hardware
CSCI-235 Micro-Computer Applications
Computer Programming.
Introduction of Programming Languages
TRANSLATORS AND IDEs Key Revision Points.
CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING
Presentation transcript:

ALGORITHMS AND PROGRAMMING LANGUAGES Lecture 5: Algorithms and programming languages Networks and Communication Department 1

Algorithm  An algorithm is a procedure or formula for solving a problem.  Derives from the mathematician, Mohammed ibn- Musa al-Khwarizmi.  Al-Khwarizmi's work is the likely source for the word algebra as well.

Definition:  In mathematics and computer science, an algorithm is a step-by-step procedure for calculations.  Algorithms are used for calculation, data processing, and automated reasoning.  A program is one type of algorithm All programs are algorithms Not all algorithms are programs!

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.

What is a program?  A program is something that is produced using a programming Language.  A program is a structured entity with Semantics.

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.

Types of programming Languages

Levels of Programming Languages High-level program class Triangle {... float surface() return b*h/2; } class Triangle {... float surface() return b*h/2; } Low-level program LOAD r1,b LOAD r2,h MUL r1,r2 DIV r1,#2 RET LOAD r1,b LOAD r2,h MUL r1,r2 DIV r1,#2 RET Executable Machine code

Levels/Generations of Programming Languages  1 st Generation Programming language (1GL)  Machine Language: 0s or 1s  2 nd Generation Programming language (2GL)  Assembly Language : Mnemonics  3 rd Generation Programming language (3GL)  High-Level Languages ; (procedure oriented or Object Oriented)  4 th Generation Programming language (4GL)  Very-High-Level Languages  5 th Generation Programming Language  Natural Languages CSC141 Introduction to Computer Programming

Machine language (1GL)  The lowest level of language.  The language used to program the first-generation 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.

Assembly language (2GL) CSC141 Introduction to Computer Programming  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: ADDAX, BX MOVCX, AX INCCX Op-code;ADD, MOV, INC OperandsAX, BX,CX

Assembly language (2GL) CSC141 Introduction to Computer Programming 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. (Assembler – A program that translates the assembly language program into machine language.

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++

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)

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 hearing.

Networks and Communication Department 18 Any Questions ?

References Networks and Communication Department  Behrouz Forouzan and Firouz Mosharraf, “Foundations of computer science”, Second edition, chapter18, pp