lec 3 - programming language

Upload: ramineni-nischal

Post on 05-Apr-2018

216 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/31/2019 Lec 3 - Programming Language

    1/18

    Soft ware & hardware

    Programs,namely, the list of instructions to be executed bya computer are known as the software of a computer

    The electronic circuits used in building a computer thatexecutes the soft ware is known as the hardware

  • 7/31/2019 Lec 3 - Programming Language

    2/18

    Computer software may be classified in totwo categories

    1)System software

    2)Application software

  • 7/31/2019 Lec 3 - Programming Language

    3/18

    System software

    System software is a program thatcontrols the computers hardware orthat can be used to maintain the

    computer in some way so that it runsmore efficiently. We have 3 basic typesof system software

  • 7/31/2019 Lec 3 - Programming Language

    4/18

    Application software

    It tells the computer how to accomplishspecific tasks such as word processing ordrawing for the user. Thousands of

    applications are available for manypurposes and for people of all ages. Someof the major categories of theseapplications include

    a) Word processing software is used forcreating text based documents such asnews papers or brochures and so on.

  • 7/31/2019 Lec 3 - Programming Language

    5/18

    b) spread sheets are designed to usenumbers and formulas to do calculationsvery easily.

    commonly used spreadsheet programsare microsoft excel.

    c)Database management system(DBMS) is asoftware tool that allows multiple users tostore , access and process data into usefulinformation.

    ex: oracle,microsoft access.

  • 7/31/2019 Lec 3 - Programming Language

    6/18

    Evo ut on an H storyof Programming

    LanguagesSoftware/Hardware/System

  • 7/31/2019 Lec 3 - Programming Language

    7/18

    Software

    ProgrammingLanguage

  • 7/31/2019 Lec 3 - Programming Language

    8/18

    History Timeline

  • 7/31/2019 Lec 3 - Programming Language

    9/18

    Machine languages

    Assembly languages

    Higher-level languages

    To build programs, people use languages that are similarto human language. The results are translated into

    machine code, which computers understand.

    Programming languages fall into three broad categories:

    The Evolution of Programming Languages

  • 7/31/2019 Lec 3 - Programming Language

    10/18

    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.

    The Evolution of Programming Languages -

    Machine Languages

  • 7/31/2019 Lec 3 - Programming Language

    11/18

    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.

    The Evolution of Programming Languages -

    Assembly Languages

  • 7/31/2019 Lec 3 - Programming Language

    12/18

    Assembler

    Assembly

    code

    Object code

  • 7/31/2019 Lec 3 - Programming Language

    13/18

    Third-generation languages

    Fourth-generation languages

    Fifth-generation 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:

    The Evolution of Programming Languages -

    Higher-Level Languages

  • 7/31/2019 Lec 3 - Programming Language

    14/18

    FORTAN C

    COBOL C++

    BASIC Java

    Pascal ActiveX

    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 createdfor one type of system can be translated for use on a

    different type of system.

    The following languages are 3GLs:

    Higher-Level Languages -

    Third-Generation Languages

  • 7/31/2019 Lec 3 - Programming Language

    15/18

    A Typical C Program DevelopmentEnvironment

    1. Edit

    2. Preprocess

    3. Compile

    4. Link5. Load

    6. ExecuteDisk

    Disk

    Loader

    Linker

    Compiler

    Preprocessor

    Editor

    Disk

    Disk

    Disk

    Primary Memory

    CPU

    Primary Memory

    1. Program is created in theeditor and stored on disk

    2. Preprocessor program

    processes the code

    3. Compiler creates object

    code and stores it on disk.

    5. Loader puts program

    in memory.

    4. Linker links the object

    code with the libraries

    6. CPU takes each instruction

    and executes it, possibly

    storing new data values as

    the program executes

    Phases of C Programs:

  • 7/31/2019 Lec 3 - Programming Language

    16/18

    Visual Basic (VB)

    VisualAge

    Authoring environments

    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 visualenvironment, using graphical tools.

    The following languages are 4GLs:

    Higher-Level Languages -

    Fourth-Generation Languages

  • 7/31/2019 Lec 3 - Programming Language

    17/18

    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 thanalgorithms, used in Artificial Intelligence

    Prolog

    Higher-Level Languages -

    Fifth-Generation Languages

  • 7/31/2019 Lec 3 - Programming Language

    18/18

    Summary