Computer software

Содержание

Слайд 2

LECTURE’S OUTLINE The aim of topic: Learn about the operating system

LECTURE’S OUTLINE The aim of topic: Learn about the operating system

and its types, explore types of programming languages.

Agenda:
Computer Software
System Software
Programming Languages
Little Man Computer

Слайд 3

Computer Software Computer hardware is useless without software. Software is the

Computer Software

Computer hardware is useless without software.
Software is the set of

instructions and associated data that direct the computer to do a task.
Software can be divided into two categories: system software and application software.
System software helps the computer to carry out its basic operating tasks.
Application software helps the user carry out a variety of tasks.
Слайд 4

Computer Software

Computer Software

Слайд 5

System Software Manages the fundamental operations of the computer, such as

System Software

Manages the fundamental operations of the computer, such as
Loading programs

and data into memory,
Executing programs,
Saving data to disks,
Displaying information on the monitor,
Transmitting data through a port to a peripheral device.

System software: operating systems, utilities, device drivers.

Слайд 6

Operating Systems Collection of computer programs that control the interaction of

Operating Systems
Collection of computer programs that control the interaction of the

user and the computer hardware.
Responsible for directing all computer operations and managing all computer resources.
Control basic input and output, allocates system resources, manages storage space, maintains security, and defects equipment failure.
A part of the operating system code is stored in a ROM and the rest of it resides on a disk.
Loading the operating system into memory is called booting the computer.

System Software

Слайд 7

System Software Utilities Another category of system software. Augments the OS

System Software

Utilities
Another category of system software.
Augments the OS by taking

over some of its responsibility for allocating hardware resource.
Utility Program – System software consisting of programs for routine, repetitive tasks (e.g. copying, clearing primary storage, computing a square root, or storing), which can be shared by many users.
Many utilities come with OS.
Some independent software developers offer utilities for sale separately.
Слайд 8

Application Software Developed for a specific task, such as word processing

Application Software

Developed for a specific task, such as word processing (MS

Word/ WordPerfect), accounting (Lotus 1-2-3/ Excel), or database management (Access/ dBASE).
We also use graphics and presentation software.
Most applications are purchased on diskette or CD-ROM.
They are installed by copying the programs from the diskettes/ CD-ROM to the hard disk.
Слайд 9

Programming Languages (PLs) Computer Languages Low-level language: Machine language Assembly language High-level languages

Programming Languages (PLs)

Computer Languages
Low-level language:
Machine language
Assembly language
High-level languages

Слайд 10

Machine Language Machine language was the first generation programming language. Machine

Machine Language
Machine language was the first generation programming language.
Machine language:

directly understood by a computer since it is a collection of binary numbers (0 and 1).
Disadvantages: It is not standardized, different CPU needs different machine languages. Slow and labor-intensive process.

Programming Languages (PLs)

Слайд 11

Assembly language One step above of machine language: the second generation

Assembly language
One step above of machine language: the second generation of

programming languages.
More readable.
Computer operations are represented by mnemonic codes rather than binary memory addresses.
Programmers could substitute languagelike acronyms and words such as add, sub, and load in programming statements.
A language translator called a compiler converted the English like statements into machine language.
Disadvantage: CPU-dependent.

Programming Languages (PLs)

Слайд 12

Programming Languages (PLs)

Programming Languages (PLs)

Слайд 13

High-level languages Combines algebraic expressions and English symbols. The high-level languages

High-level languages
Combines algebraic expressions and English symbols.
The high-level languages are so

called because each statement in these languages generates multiple statements at the machine-language level.
It requires much faster, more efficient compilers to translate higher-level languages into machine codes.
Advantage: CPU-independent.
Disadvantage: computers do not understand.

Programming Languages (PLs)

Слайд 14

Programming Languages (PLs)

Programming Languages (PLs)

Слайд 15

Why there are many PLs? People take ideas from different languages

Why there are many PLs?

People take ideas from different languages and

combine them into a new languages. Some features are improved, some are added, some are removed.
Some are modifications of previous languages, like C++ is next step of C, and Java is some modification of C++
Слайд 16

Important PLs Java - used in web applications, software systems, where

Important PLs

Java - used in web applications, software systems, where software

needs security, and frequent changes
C++ - used in games, and software where speed is the most important. (Windows is written in C++)
Python - writing software is much faster. Used by scientists because it is easy.
Javascript - to perform operations in web-browser
PHP - develop fast web-applications
Ruby - easy to understand, and write complex applications
Слайд 17

PLs comparison This table has imaginary numbers. But this numbers shows some intuition

PLs comparison

This table has imaginary numbers.
But this numbers shows some

intuition
Слайд 18

Little Man Computer The Little Man Computer (LMC) is an instructional

Little Man Computer

The Little Man Computer (LMC) is an instructional model

of a computer.
The LMC is generally used to teach students, because it models a simple architecture computer - which has all of the basic features of a modern computer.
It can be programmed in machine code or assembly code
Слайд 19

Try it: Little Man Computer http://robowriter.info/little-man-computer/ http://peterhigginson.co.uk/LMC/

Try it: Little Man Computer

http://robowriter.info/little-man-computer/
http://peterhigginson.co.uk/LMC/