SIMS-201 Computer Software. 2 Assembly Code Operating System Programming Language Application  Overview.

Slides:



Advertisements
Similar presentations
IT-101 Section 001 Lecture #13 Introduction to Information Technology.
Advertisements

ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Lecture 1: Overview of Computers & Programming
 Computer hardware components are the physical pieces of the computer.  The major hardware components of a computer are: – The central processing.
Prof. B. I. Khodanpur HOD – Dept. of CSE R. V. College of Engineering. ID: Subject: Computer Fundamentals (For EDUSAT) Common.
Mr Manesh T Dept. of CSE College of Arts and Science Chapter 3 Types of Softwares Code: 1400 Tech.
1 Lecture 1  Getting ready to program  Hardware Model  Software Model  Programming Languages  The C Language  Software Engineering  Programming.
Introduction to Computer Programming CSC 1401: Introduction to Programming with Java Lecture 2 Wanda M. Kunkle.
Chapter 2: Impact of Machine Architectures What is the Relationship Between Programs, Programming Languages, and Computers.
Chapter 3 Software Two major types of software
1 CHAPTER 4 LANGUAGE/SOFTWARE Hardware Hardware is the machine itself and its various individual equipment. It includes all mechanical, electronic.
Introduction to Computer Software
I NTRODUCTION TO C OMPUTER S OFTWARE. S OFTWARE & H ARDWARE ? Computer Instructions or data, anything that can be stored electronically is Software. Hardware.
Systems Software Operating Systems.
COMPUTER SOFTWARE Chapter 3. Software & Hardware? Computer Instructions or data, anything that can be stored electronically is Software. Hardware is one.
Operating System.
Lesson 4 Computer Software
Introduction to Computers and Python. What is a Computer? Computer- a device capable of performing computations and making logical decisions at speeds.
1 Chapter-01 Introduction to Computers and C++ Programming.
 2008 Pearson Education, Inc. All rights reserved Introduction to Computers, the Internet and World Wide Web.
Software – Applications software and programming languages
Slide 1 System Software Software The term that we use for all the programs and data that we use with a computer system. Two types of software: Program.
COMPUTER SOFTWARE Section 2 “System Software: Computer System Management ” CHAPTER 4 Lecture-6/ T. Nouf Almujally 1.
CS 0004 –Lecture 1 Wednesday, Jan 5 th, 2011 Roxana Gheorghiu.
SIMS-201 Computer Software.
What is a Computer ? Computers are Electronic Machines that process (performs calculation and manipulation) Data under the control of Set of Instructions.
Tranlators. Machine Language The lowest-level programming languageprogramming language Machine languages are the only languages understood by computers.languagescomputers.
Software Writer:-Rashedul Hasan Editor:- Jasim Uddin.
CPS120: Introduction to Computer Science Introduction to Computers.
Visual BASIC 1 Introduction
INTRODUCTION SOFTWARE HARDWARE DIFFERENCE BETWEEN THE S/W AND H/W.
Software – Applications software and programming languages.
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.
School of Computer Science & Information Technology G6DICP Introduction to Computer Programming Milena Radenkovic.
COMPUTER PROGRAMMING. Computer programming the objective of the module to gain the necessary skills to develop a computer program using one of the high.
Multimedia and Computers Introduction to Computers.
FOUNDATION IN INFORMATION TECHNOLOGY (CS-T-101) TOPIC : INFORMATION SYSTEM – SOFTWARE.
Beginning Snapshots Chapter 0. C++ An Introduction to Computing, 3rd ed. 2 Objectives Give an overview of computer science Show its breadth Provide context.
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.
1 THE COMPUTER. 2 Input Processing Output Storage 4 basic functions.
© Paradigm Publishing, Inc. 4-1 Chapter 4 System Software Chapter 4 System Software.
Application Software System Software.
A.Abhari CPS1251 Topic 1: Introduction to Computers Computer Hardware Computer components Connecting Computers Computer Software Operating System (OS)
Lecture on Central Process Unit (CPU)
Software Rashedul Hasan. Software Instructions and associated data, stored in electronic format, that direct the computer to accomplish a task. Instructions.
Chapter 1 Basic Concepts of Operating Systems Introduction Software A program is a sequence of instructions that enables the computer to carry.
Introduction  Program: Set of sequence instruction that tell the computer what to do.  Software: A collection of programs, data, and information. 
Chapter 1 An Overview of Computers and Programming Languages.
©2013 Pearson Education, Inc. Upper Saddle River, NJ. All Rights Reserved. Introduction to Computers and Computing.
What is a Computer An electronic, digital device that stores and processes information. A machine that accepts input, processes it according to specified.
Introduction to Computing Lecture 9,10 Software
Programming Logic and Design Seventh Edition Chapter 1 An Overview of Computers and Programming.
Operating System & Application Software
Nature & Types of Software
Chapter 1: An Overview of Computers and Programming Languages
COMPUTER ORGANIZATION & ASSEMBLY LANGUAGE
System Programming and administration
Microprocessor and Assembly Language
ICS103 Programming in C Lecture 1: Overview of Computers & Programming
Course: Introduction to Computers
Contents Todays Topic: Introduction to Computer Software We will learn
Computer Science I CSC 135.
Computers: Hardware and Software
Chapter 6 System and Application Software
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.
Chapter 6 System and Application Software
Chapter 6 System and Application Software
Chapter-1 Computer is an advanced electronic device that takes raw data as an input from the user and processes it under the control of a set of instructions.
Chapter 6 System and Application Software
Presentation transcript:

SIMS-201 Computer Software

2 Assembly Code Operating System Programming Language Application  Overview

3  Introduction Computer software consists of the instructions and application programs that permit computers to accomplish tasks It is called software because, unlike hardware that has fixed configurations, connections, and operation, the software is flexible and easily modified Software programs control computers at 4 different levels: Assembly code Operating system Programming language Application

4 Hierarchy of Software Operating System Assembly Code Programming Language (High Level Language) Application

5 Assembly Code Assembly Code, also called assembly language is the most basic language of the computer and consists of elementary instructions recognized by the CPU It is a a human-readable notation for the lowest level language-the machine language that a specific computer architecture uses. Machine language, a mere pattern of bits, are instructions directly recognized by the CPU Machine language is made readable (i.e. converted to assembly language) by replacing these pattern of bits with symbols called ‘mnemonics’ (ex. ADD, SUB, LOAD, JUMP) Unlike high-level languages, there is a 1-to-1 mapping from simple assembly to machine language, so that computers can translate in both directions without losing information. Assembly language is converted to machine language by an assembler

6 Examples of assembly code instructions (mnemonics) include: ADD and MOV Assembly code instructions perform the basic computer operations including moving data, changing contents of registers, adding the contents of two registers and jumping to different parts of a program For example, the computer performs the arithmetic operation: as follows: MOV 1, R0 (Move the number 1 into Register 0) MOV 2, R1(Move the number 2 into Register 1) ADD R0, R1 (Add R0 to R1 and put the result in Register 1) MOV 4, R0 (Move the number 4 into Register 0) ADD R0, R1 (Add R0 to R1 and put the result into Register 1) Assembly code is different for each type of computer and a code written for the Intel Pentium (IBM) microprocessor chip will not operate on the PowerPC (Macintosh) microprocessor

7 The set of instructions a processor recognizes (can execute) is called an instruction set. There are two types of instruction sets: Reduced Instruction Set Computer (RISC) – ex. AMD Complex Instruction Set Computer (CISC) – ex. Pentium The reduced instruction set only contains very simple instructions such as ADD, SUB (subtract), LD (load from memory) and is argued to be faster to execute. On the other hand, the complex instruction set includes the RISC + implements a few more complex instructions.

8 Operating System The operating system is a set of commands that performs common system tasks such as accepting data from the keyboard, displaying data on the monitor, sending data to the printer, examining the contents of a directory, etc. It is stored on the hard disk and is loaded to memory when the computer is switched on An operating system is conceptually broken into two components: A shell and a kernel. The shell is a command interpreter and as the name implies, is an outer wrapper to the kernel which in turn talks directly to the hardware Hardware Kernel Shell Applications In some operating systems the shell and the kernel are completely separate entities, allowing you to run varying combinations of shell and kernel (eg Unix), in others, the separation is only conceptual (eg Windows). Source: wikipedia.org

9 Examples of operating systems MS-DOS (Microsoft disk operating system) Introduced in 1981 Required basic familiarity with its operation and organization Intel computers such as commonly used MS-DOS Users were required to know basic commands (abbreviations) such as dir or del to perform tasks Uses a command line user interface-is non graphical MacOS Introduced in 1984 Operating system for apple Macintosh computers First commercially successful OS which used GUI (graphical user interface) Used icons to represent data structures Microsoft Windows Often used with PC’s (home use) Introduced in 1985 in response to MacOS

10 Unix and similar systems Unix MacOS X Linux Solaris operating environment Microsoft Xenix AIX by IBM

11 Linux Linux is causing a revolution in the world of computers Initially created as a hobby by a young student called Linus Torvalds at the University of Helsinki in Finland It may be used for a variety of purposes including networking and software development It is often considered to be an excellent, low-cost alternative to other more expensive operating systems The attractiveness of Linux is that its source code, which is a series of commands written in a programming language is freely available to anyone – open source The source code can be modified to fit the individual needs of the user It is developed under the GNU General Public License, enabling the user to share and change free software in comparison to most other software whose source code is concealed, preventing users to share or modify it Source: linux.org

12 Operating Systems can be classified as: GUI: Graphical User Interface operating systems are operating systems that have the capability of using a mouse and are graphical Multi user: allows multiple users to utilize the computer and run programs at the same time Multi processing: allows multiple processors to be utilized Multi tasking: allows multiple software processes (also called programs or applications) to be run at the same time Multi threading: allows different parts (threads) of a software process to run concurrently Operating system classification

13 Programming Language Higher level programming languages contain instructions that are more powerful, more general and better suited for programming a task than the basic assembly language instructions Each higher level language instruction might consist of hundreds of assembly language instructions (after it is converted to assembly) Software programmers write the most efficient and fastest programs in assembly language, however that is more difficult, error prone, and time consuming than using a higher level language The higher level computer programming languages were invented to make program development easier. Examples of such languages are: FORTRAN, BASIC, PASCAL, etc.

14 Programs written by programmers are translated into the machine language by a compiler Examples of programming languages: BASIC COBOL Pascal C C++ Java C#.NET Visual Basic Perl HTML XML

15 Developing a Computer Program Programmer Writes program in source code (higher level language) Compiler Converts source code to machine language code Linker Combines machine language with libraries & converts them to an executable module Interpreter Translates and executes one line at a time CompilerLink/load Executable module Source code Machine language Output Input data High-level language Low-level Language

16 How the program runs 0LDA 14 1ADD 15 2STA 14 3HLT ….…… Assume a is stored in 14 and b is stored in 15 a= a + b Result Program Fetch-execute cycle Main memory (RAM)

17 Processes and Threads What is a process? Represents an instance of a running program You create a process to run a program Starting an application creates a process What is a thread? An execution context within a process All threads in a process share the same per-process address space Executive Per-process address space Systemwide Address Space Thread

18 Application programs An application program is software written by a professional programmer for a specific operating system to perform a particular task such as word processing, spread sheet, graphic design, music editing, etc. Before ‘shrink-wrap’ software was available, i.e. computer users also needed to be computer programmers who knew the operating system and at least one higher level language Such knowledge is no longer necessary and software suitable for a particular application can be directly purchased Examples of application software: MS office Netscape Media player MSN messenger Adobe acrobat

19 Applications Numerical: (number crunching, arrays) calculator, spreadsheet weather forecasting, computer aided design Symbolic: (data structures, translation) compiler, interpreter, scheduling, circuit layout Information: (records, tables, disks) database, accounts World Wide Web, booking system Systems: (devices, networks, control) window/file/print managers device drivers, network software