Computer Software. Evolution of Programming Languages Machine Languages Assembly Languages High-Level Languages Fourth-Generation Languages.

Slides:



Advertisements
Similar presentations
What is Computer Software?. Hardware vs Software Got to have both to get the job done!
Advertisements

Chapter 2 How Hardware and Software Work Together.
Prof. B. I. Khodanpur HOD – Dept. of CSE R. V. College of Engineering. ID: Subject: Computer Fundamentals (For EDUSAT) Common.
Copyright © 2002 W. A. Tucker1 Chapter 1 Lecture Notes Bill Tucker Austin Community College COSC 1315.
Chapter 5 Operating Systems. 5 The Operating System When working with multimedia, the operating system is perhaps the most important, the most complex,
Programming Creating programs that run on your PC
Chapter 5 Information Systems in Business: Software
Software: Systems and Application Software
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Programming A Historic Perspective on Code Reuse Yingcai Xiao.
CMP 131 Introduction to Computer Programming Violetta Cavalli-Sforza Week 1, Lab.
© Prentice Hall CHAPTER 3 Computer Software.
Chapter 3 Software Two major types of software
Software Development CS 1 Rick Graziani Spring 2007.
I NTRODUCTION TO C OMPUTER S OFTWARE. S OFTWARE & H ARDWARE ? Computer Instructions or data, anything that can be stored electronically is Software. Hardware.
Computer Software.
Types of software. Sonam Dema..
COMPUTER SOFTWARE Chapter 3. Software & Hardware? Computer Instructions or data, anything that can be stored electronically is Software. Hardware is one.
Computers: Software Patrice Koehl Computer Science UC Davis.
Week 6 Operating Systems.
Lesson 4 Computer Software
Principles of Programming Chapter 1: Introduction  In this chapter you will learn about:  Overview of Computer Component  Overview of Programming 
CS 161 INTRO TO PROGRAMMING I Dr. Blaise W. Liffick Fall
© Paradigm Publishing Inc. 4-1 Chapter 4 System Software.
Introduction COMP104: Fundamentals and Methodology.
Computer Organization
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
Chapter 4 System Software.
HERY H AZWIR Computer Software. Computer Software Outline Software and Programming Languages  Software  Programming  Programming language development.
Tranlators. Machine Language The lowest-level programming languageprogramming language Machine languages are the only languages understood by computers.languagescomputers.
Standard Grade Computing System Software & Operating Systems.
CHAPTER FOUR COMPUTER SOFTWARE.
L Ch5: Software Review Learning Objectives
Introduction to Interactive Media Interactive Media Tools: Software.
Computer system overview1 The Effects of Computers Pervasive in all professions How have computers affected my life? How have computers affected my life?
Computer Programming A program is a set of instructions a computer follows in order to perform a task. solve a problem Collectively, these instructions.
Chapter 4 System Software. Software Programs that tell a computer what to do and how to do it. Sets of instructions telling computers to perform actions.
Programming With C.
Visual C++ Programming: Concepts and Projects
Systems Software Operating Systems. What is software? Software is the term that we use for all the programs and data that we use with a computer system.
© Paradigm Publishing Inc. 4-1 OPERATING SYSTEMS.
Liang, Introduction to C++ Programming, (c) Chapter 1 Introduction to Computers, Programs, and C++
McGraw-Hill/Irwin Copyright © 2013 by The McGraw-Hill Companies, Inc. All rights reserved. Chapter 4 Computer Software.
Chapter 5 Information Systems in Business Software
10/8: Software What is software? –Types of software System software: Operating systems Applications Creating software –Evolution of software development.
Computer Software Types Three layers of software Operation.
1 Software. 2 What is software ► Software is the term that we use for all the programs and data on a computer system. ► Two types of software ► Program.
Chapter 1 Computers, Compilers, & Unix. Overview u Computer hardware u Unix u Computer Languages u Compilers.
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Chapter 4 Software. Introduction Program: is a set of sequence instructions that tell the computer what to do. Software: is a collection of programs,
Operating Systems. Categories of Software System Software –Operating Systems (OS) –Language Translators –Utility Programs Application Software.
Chapter 11  Getting ready to program  Hardware Model  Software Model  Programming Languages  Facts about C++  Program Development Process  The Hello-world.
Introduction  Program: Set of sequence instruction that tell the computer what to do.  Software: A collection of programs, data, and information. 
The Big Picture. My Story  Wrote great programs  Didn’t understand how they worked.
OCR A Level F453: The function and purpose of translators Translators a. describe the need for, and use of, translators to convert source code.
Computer Software Lecturer: Dr Mohammad Nabil Almunawar.
نظام المحاضرات الالكترونينظام المحاضرات الالكتروني Computer Software.
Some of the utilities associated with the development of programs. These program development tools allow users to write and construct programs that the.
Computer Software 1.
Systems Software / The Operating System CSC October 14, 2010.
Introduction to computer software. Programming the computer Program, is a sequence of instructions, written to perform a specified task on a computer.
Computer System Structures
Ashima Wadhwa Assistant Professor(giBS)
Contents Todays Topic: Introduction to Computer Software We will learn
Computer Software CS 107 Lecture 2 September 1, :53 PM.
Programming COMP104: Fundamentals and Methodology Introduction.
COMPUTER SOFT WARE Software is a set of electronic instructions that tells the computer how to do certain tasks. A set of instructions is often called.
CMP 131 Introduction to Computer Programming
Introduction to Computer Software
Presentation transcript:

Computer Software

Evolution of Programming Languages Machine Languages Assembly Languages High-Level Languages Fourth-Generation Languages

Machine Languages The native language of the hardware Patterns of binary bits Machine specific, is non-portable –is essentially the microcode of the processor

Assembly Languages Replace the pattern of binary bits with –mnemonics for the commands –variable names for memory locations Essentially a one-to-one mapping of the machine language Still machine specific, is non-portable

High-Level Languages Represents multiple machine-level statements with single statements Easier to learn and use Not machine specific, is portable

An Example Machine Code Assembly Code High-Level Code in Hex 27BB0001 ldah gp, main main() 23BD8050 lda gp, main { 23DEFFF0 lda sp, -16(sp) int a, b, c; A61D8018 ldq r16, 8(gp) a = 3; A77D8010 ldq r27, printf b = 4; 47E0F411 mov 7, r17 c = a + b; B75E0000 stq r26, (sp) printf(“\n%d\n”, c); 6B5B4000 jsr r26, printf } 27BA0001 ldah gp, main A75E0000 ldq r26, (sp) 23BD8050 lda gp, main 47FF0400 clr r0 23DE0010 lda sp, 16(sp) 6BFA8001 ret r26

Move from Language to Language Computers only understand machine language. Use an ASSEMBLER to convert a program written in assembly language to machine language. Use a COMPILER to convert a program written in a high-level language to machine language.

Executable Code Program code which is in machine language and can be run (executed) by the computer Is hardware dependent you can’t run it on just any machine On PCs PC usually have an EXE or a COM extension

Object Code Program code which is in machine language but which is not ready to be run (i.e. it is a partial program). Is hardware dependent. On PCs usually has an OBJ extension. Not commonly used by end-users.

Source Code Program code which is written in a high- level language. Cannot be run by the computer. Is usually a text file. File name extension usually reflects the high-level language –BASIC - BAS extension –Pascal - PAS extension

Compiler & Files Object Code Executable Code Source Code Compiler Linker Object Code Library Error Messages Program Listing

Dynamic Link Libraries Some Window programs use “run-time” linking and and require the presence of dynamic link library files which have a DLL extension. DLL files ideally contain code which would be used my a number of programs.

Object Libraries & DLLs Both contain “commonly” used code. With object libraries all the code is included in the executable file at compile time so: –programming effort is saved –no space saving is realized, executables which use common code have their own copy of the library code

Object Libraries & DLLs With DLLs the code is “fetched” from the DLL file at “run time” so: –programming effort is saved –space savings “may” be realized –the more executables that use the library code the greater the savings –typically only a small part of the library code is used

Common HLLs FORTRAN COBOL BASIC Pascal C C++ PL/1 Ada JAVA LISP Prolog

Fourth Generation Languages First three generations focused on describing “HOW TO DO” a task. 4GLs focus on describing “WHAT TO ACCOMPLISH” The fourth generation language compiler must be able to translate the “what to accomplish” description into a machine level “how to” set of instructions.

Categories of 4GLs Query languages Report generators Graphics languages Application generators Very high-level programming languages Application software packages Microcomputer tools

Categories of Software System Software –Operating Systems (OS) –Language Translators –Utility Programs Application Software

Operating Systems It is the job of the operating system to manage the computers resources and control the execution of programs. Computer resources include –memory –device drivers for peripheral devices The OS is the interface between the hardware and the user/application program.

Layers of interaction Hardware System Software Application Software Users

Operating Systems OSs run the full spectrum from –single program-single user, to –multitasking, multi-user, with virtual memory The OS decides which program runs and for how long. The OS improves throughput by skipping over processes that are waiting for I/O.

Common Operating Systems CP/M DOS Windows 3.1 Windows 95 Windows NT OS/2 System 7 Mac OSX Linux UNIX VMS VM/CMS

More RAM needed! Newer OSs extend the capabilities of desktop computers but require more RAM Windows MB (std),2MB (real) Windows MB recommended Windows NT MB (32 rec.) Windows MB min. Windows XP - 128MB rec.(64MB min) Windows Vista - 1GB rec. (512MB min)