Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables.

Slides:



Advertisements
Similar presentations
Evolution and History of Programming Languages Software/Hardware/System.
Advertisements

Computers Are Your Future
CS105 INTRODUCTION TO COMPUTER CONCEPTS INTRO TO PROGRAMMING Instructor: Cuong (Charlie) Pham.
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
Software: Systems and Application Software
Computers Are Your Future © 2006 Prentice Hall, Inc.
Computers: Tools for an Information Age
Software: Systems & Application Software Chapter 4.
Chapter 16 Programming and Languages: Telling the Computer What to Do.
1414 CHAPTER PROGRAMMING AND LANGUAGES. © 2005 The McGraw-Hill Companies, Inc. All Rights Reserved Competencies Describe the six steps of programming.
SOFTWARE SYSTEMS SOFTWARE APPLICATIONS SOFTWARE PROGRAMMING LANGUAGES.
1 INTRODUCTION TO OOP Objective: Know the difference between functional programming and OOP Know basic terminology in OOP Know the importance of OOP Know.
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.
Chapter 13 Programming Languages and Program Development 1.
Computers Are Your Future Tenth Edition Chapter 11: Programming Languages & Program Development Copyright © 2009 Pearson Education, Inc. Publishing as.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Introduction to Computer Programming itc-314
Introduction to Programming Language CS105 Programming Language First-generation: Machine language Second-generation: Assembly language Third-generation:
PZ01A Programming Language design and Implementation -4th Edition Copyright©Prentice Hall, PZ01A -- Introduction Programming Language Design and.
Computers Are Your Future Eleventh Edition
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
GENERAL CONCEPTS OF OOPS INTRODUCTION With rapidly changing world and highly competitive and versatile nature of industry, the operations are becoming.
Welcome to OBJECT ORIENTED PROGRAMMIN Date: 10/09/2014 Prepared By Prepared By : VINAY ALEXANDER PGT(CS) KV jhagrakhand.
O BJECT O RIENTATION F UNDAMENTALS Prepared by: Gunjan Chhabra.
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.
Copyright©2008 N.AlJaffan®KSU1 Chapter 11 Information system development and programming language.
Programming Languages 1.07a.  A computer program is a series of instructions that direct a computer to perform a certain task.  A programming language.
1 Introduction Programming Language Design and Implementation (4th Edition) by T. Pratt and M. Zelkowitz Prentice Hall, 2001 Sections
Computer Concepts 2014 Chapter 12 Computer Programming.
Information Systems Overview (COIS 20024) Lecture: Week 3 Computer Software (Information Systems Resources)
Chapter 6 Programming Languages. © 2005 Pearson Addison-Wesley. All rights reserved 6-2 Chapter 6: Programming Languages 6.1 Historical Perspective 6.2.
Evolution and History of Programming Languages. Machine languages Assembly languages Higher-level languages To build programs, people use languages that.
Evolution and History of Programming Languages. Software Programming Language.
1 Chapter 13 Understanding Computers, 11 th Edition 13 Program Development and Programming Languages TODAY AND TOMORROW 11 th Edition CHAPTER.
The Teacher Computing Computer Languages [Computing]
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.
IXA 1234 : C++ PROGRAMMING CHAPTER 1. PROGRAMMING LANGUAGE Programming language is a computer program that can solve certain problem / task Keyword: Computer.
INTRODUCTION TO COMPUTING CHAPTER NO. 04. Programming Languages Program Algorithms and Pseudo Code Properties and Advantages of Algorithms Flowchart (Symbols.
Chapter 12 Computer Programming. Chapter Contents Chapter 12: Computer Programming 2  Section A: Programming Basics  Section B: Procedural Programming.
Basic of Programming Language Skill Area Computer System Computer Program Programming Language Programmer Translators.
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.
Principles of Information Systems, Sixth Edition Software: Systems and Application Software Chapter 4.
5.0 PROGRAMMING Duration: 10 weeks Prepared by Ong Lay Peng Copyright © 2007.
Software: Systems and Applications Software. The Importance of Software in Business time 1950today $ Software Hardware High Low.
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.
Chapter 1: Introduction to Visual Basic.NET: Background and Perspective Visual Basic.NET Programming: From Problem Analysis to Program Design.
Programming Languages and the Programming Process lesson 28.
Lecture #1: Introduction to Algorithms and Problem Solving Dr. Hmood Al-Dossari King Saud University Department of Computer Science 6 February 2012.
Introduction to Programming Languages © 2005 Prentice Hall, Inc. CXC IT Unit 2: Intro. to Programming.
Computer Software Lecturer: Dr Mohammad Nabil Almunawar.
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 (1) LECTURE # 1 Programming and Languages: Telling the Computer What to Do.
Your Interactive Guide to the Digital World Discovering Computers 2012 Chapter 13 Computer Programs and Programming Languages.
 Human language : commonly used to express feeling and understand what other people expression.  Computer language : are a languages by which a user.
Evolution and History of Programming Languages
Evolution and History of Programming Languages
CSCI-235 Micro-Computer Applications
Computer Programming.
Presentation transcript:

Programming Languages – Coding schemes used to write both systems and application software A programming language is an abstraction mechanism. It enables a programmer to specify a computation abstractly, and to let a program (usually called an assembler, compiler or interpreter) implement the specification in the detailed form needed for execution on a computer

To build programs, people use languages that are similar to human language. The results are translated into machine code, which computers understand. Programming languages fall into three broad categories  Machine languages  Assembly languages  Higher-level languages

Categories of Programming Languages Machine Language Machine Language – 1 st generation programming language – Considered a low-level language because it involves basic coding using the binary symbols 1 and 0 Machine languages (first-generation languages) are the most basic type of computer languages, consisting of strings of numbers the computer's hardware can use. Different types of hardware use different machine code. For example, IBM computers use different machine language than Apple computers

Assembly Language Assembly Language – 2 nd generation language – Replaced binary digits with mnemonics (e.g., “ADD”) programmers could more easily understand Assembly languages (second-generation languages) are only somewhat easier to work with than machine languages. To create programs in assembly language, developers use cryptic English-like phrases to represent strings of numbers. The code is then translated into object code, using a translator called an assembler. Categories of Programming Languages

Higher-level languages are more powerful than assembly language and allow the programmer to work in a more English-like environment. Higher-level programming languages are divided into three "generations," each more powerful than the last Third-generation languages Fourth-generation languages Fifth-generation languages Categories of Programming Languages

Third Generation Languages Third Generation Languages – Continued trend to more symbolic code (e.g. COBOL) Third-generation languages (3GLs) are the first to use true English-like phrasing, making them easier to use than previous languages. 3GLs are portable, meaning the object code created for one type of system can be translated for use on a different type of system. The following languages are 3GLs FORTANC COBOLC++ BASICJava PascalActiveX Categories of Programming Languages

Fourth Generation Languages (4GLs) Fourth Generation Languages (4GLs) – Languages that are less procedural and even more English-like than third-generation languages (e.g. FOCUS) Fourth-generation languages (4GLs) are even easier to use than 3GLs. 4GLs may use a text-based environment (like a 3GL) or may allow the programmer to work in a visual environment, using graphical tools. The following languages are 4GLs  Visual Basic (VB)  Visual Age  Authoring environments Categories of Programming Languages

5 th generation languages 5 th generation languages – Combines rule-based code generation, component management, visual programming techniques, and reuse management – Knowledge-based management An approach to the development of computer programs in which you do not tell a computer how to do a job, but what you want it to do Fifth-generation languages (5GLs) are an issue of debate in the programming community – some programmers cannot agree that they even exist. These high-level languages would use artificial intelligence to create software, making 5GLs extremely difficult to develop. Solve problems using constraints rather than algorithms, used in Artificial Intelligence Prolog Categories of Programming Languages

Query languages Query languages – Used to ask the computer questions in English-like sentences – Also known as database languages Structured query language (SQL) Structured query language (SQL) – A standardized language often used to perform database queries and manipulations Categories of Programming Languages

Object Oriented Languages Languages that allow interaction of programming objects, including data elements and the actions that will be performed on them Note: OOP = object-oriented programming Object-oriented programming (OOP) is a method of structuring programs by identifying real world or other objects, and then writing modules each of which contains all the data and executable statements needed to represent one class of objects. Within such a module, there is a clear distinction between the abstract properties of the class which are exported for use by other objects, and the implementation which is hidden so that it can be modified without affecting the rest of the system.

Object Oriented Languages Encapsulation The process of grouping items into an object Polymorphism A process allowing the programmer to develop one routine or set of activities that will operate on multiple objects

Object Oriented Languages Inheritance Property used to describe objects in a group of objects taking on characteristics of other objects in the same group or class of objects Reusable code The instruction code within an object that can be reused in different programs for a variety of applications Examples Smalltalk, C++, Java

C++, Objective- C, Smalltalk, Java, C#, Perl,Python, Ruby and C++Objective- CSmalltalkJavaC#PerlPythonRuby PHP are examples of object-oriented programming languages.PHP The goals of object-oriented programming are  Increased understanding.  Ease of maintenance.  Ease of evolution. Object Oriented Languages

Visual Programming Languages – Languages that use a mouse, icons, or symbols on the screen and pull-down menus to develop programs – Examples Visual Basic Visual C++ PC COBOL

Programming Languages: Terminology Language translator – Systems software that converts a programmer’s source code into its equivalent in machine language Source code – High-level program code written by the programmer Object code – Another name for machine language code

Programming Languages: Terminology Interpreter – A language translator that translates one program statement at a time into machine code

Programming Languages: Terminology Compiler – A language translator that converts a complete program into machine language to produce a program that the computer can process in its entirety

Elements of Programming Languages Like ordinary languages, programming languages have syntax The syntax of a (programming) language is a set of rules that define what sequences of symbols are considered to be valid expressions (programs) in the language if-statement ::= if ( expression ) statement [ else statement ]

Hardware Description Language Basic idea is a programming language to describe hardware Initial purpose was to allow abstract design and simulation – Design could be verified then implemented in hardware Now Synthesis tools allow direct implementation from HDL code. – Large improvement in designer productivity There are many different HDLs – Verilog HDL – ABEL – VHDL

Hardware Description Languages allow fast design and verification of digital circuits. Accurate simulation and testing requires delays and inputs to be specified. There are three different levels of abstraction for modelling circuits. Hardware Description Language