150 likes | 209 Views
Systems Software. Systems Software. We communicate with each other using a language called English. We can give and receive instructions which we understand. However, we would not understand the same instructions if they were given in Russian.
E N D
Systems Software Standard Grade Computing Studies
Systems Software We communicate with each other using a language called English. We can give and receive instructions which we understand. However, we would not understand the same instructions if they were given in Russian. Similarly, we cannot give instructions to the computer in English because the computer’s own language is called Machine Code. It consists of only two numbers: 1 and 0. Standard Grade Computing Studies
In the early days of computing, the programmer had to use machine code to write the instructions for the computer to follow. This was very difficult to learn, and easy to make mistakes. - Machine Code is an example of a low level language (LLL). Special programming languages have now been developed. This makes it easier to program the computer in everyday language. These are called high level languages (HLLs). eg. Comal, BASIC, Pascal, Visual Basic. A program written in a high level language must be changed into machine code so that the computer can understand it. This is called translation. Standard Grade Computing Studies
Program A list of instructions which tell the CPU what to do High Level Languages BASIC (Beginner’s All-purpose Symbolic Instruction Code) COMAL FORTRAN PASCAL C ++ PROLOG SMALLTALK VISUAL BASIC Standard Grade Computing Studies
Common features of High Level languages: 1. HLL programs are easier to read, write and fix because they are in a language close to English. 2. Programs must be translated into machine code before they can be run. 3. Because a HLL program has to be translated it runs more slowly than a similar program written in machine code. 4. HLLs are problem oriented. 5. HLLs are easy to change so that they can run on different types of computer. Standard Grade Computing Studies
The systems software is a collection of programs that help the computer hardware to work properly. This includes: • Translator Programs • Operating System • Filing System We will be looking at Translator Programs in the nextsection Standard Grade Computing Studies
Translator Programs The only thing a computer understands is Machine Code. Everything else which goes on in a computer must be changed into Machine Code so that the computer can understand it. A translator program changes HLL program instructions into machine code. • There are two types of translator programs: • Interpreters • Compilers Standard Grade Computing Studies
The basic principle of all translation programs is: Program Translation Machine Code Object Code Source Code Standard Grade Computing Studies
(i) Interpreters Single Instruction Machine Code Translation Source Code Object Code Report Errors Execute & Discard Next Instruction Standard Grade Computing Studies
ITranslate a HLL into Machine Code, one instruction at a time. Advantages (i) Translates each line of the program as it is run. (ii) Reports errors after each line. This is a great help when learning to write programs since errors can be detected and corrected immediately.(Good for beginners) Disadvantage (i) Since each line of code is translated into machine code each time the program is run, an interpreted program is slower to run than a compiled program. Standard Grade Computing Studies
(ii) Compilers HLL Program Machine Code Translation Source Code Object Code Report Errors Save as File Execute Standard Grade Computing Studies
Translates a HLL program into Machine Code, all in one go. Advantages (i) The translation process only takes place once. Machine code is stored as a file and used when needed. (ii) Compiled programs run faster than interpreted programs. Disadvantage (i) Errors are not reported until the whole of the program has been translated. After correction the program has to be translated again. (Bad for beginners) Standard Grade Computing Studies
Best of both worlds: Use an interpreter to detect errors and debug program in the development stage. Once the program works, use a compiler to translate the program into machine code and store it as a file. Use the machine code file to run the program. Standard Grade Computing Studies
High Level Translation Translates Error Error Difficult Fast Can save Language takes place one message message to learn object to machine only once instruction on at end code code at a time screen X X X X X Ö Ö Ö Interpreter X X X Ö Ö Ö Ö Ö Compiler Summary of Translators Standard Grade Computing Studies
Software Portability • This is the ability to run a program on several different computer systems without altering it. • LLL programs are hardware specific and are not portable. • HLL programs are usually portable. • Portability is important to: • Software companies. • Organisations who own many different computer systems. Standard Grade Computing Studies