Hardware is the physical electronic components of the computer e.g. the mother board and graphics card.
Software is the programs and data that run upon the hardware, there are several types of software:
High level software:
System software-software that performs the tasks needed to operate the hardware, again this software can be broken down into 4 other sub sectors these are operating system(performs the tasks that are needed to drive the hardware and acts as an interface for the hardware); library programs(These are programs that other programs use to get to other things like to access the internet or use printers) ;utility programs(Programs that normally run in the background and usually helps to analyse, optimise and configure your computer like antivirus ) and finally translator programs.
The three translator programs are: an assembler is used to translate assembly code(slightly easier to work with that machine code but still difficult) into machine code.
A compiler translate the whole source code and maximises it until object code is produced which can then be run, it's fairly slow but only has to be done once and it needs no other program to run it.
A interpreter analyses high level programming like VB and instead of going through a compiler it follows the program out line by line. This is means that the program runs slowly but can be run straight away but has to be done every time you want to use it unlike a compiler ,its often used for simple adverts on the web.
Application Software-is software that allows the user to do generic tasks like writing a letter or listening to music(this is what most people think of as software) but it can be separated into 3 categories.
General purpose-used for many tasks and fairly diverse examples are word processors and spreadsheets usually bought off the shelf they give the user the same thing to everyone else.
Special purpose-does one task very well but can't do much else like route planning software or internet browsers.
Bespoke applications-this is software that is taylor made for a company and the customer get exactly what they want a good example is air traffic control software, can be made by payed for contractors or in-house programmers. Very expensive.
Generations of programing language:
1st gen- machien code the only code the computer can really understand in binary
2nd gen- assembly code
3rd gen-imperative high level as in VB and Java
4th gen- declarative this is were you basicaly tell what the computer what you want to do and it pretty much works it out
No comments:
Post a Comment