4a - Computer systems - software Flashcards

You may prefer our related Brainscape-certified flashcards:
1
Q

What is a computer system?

A

a collection of inputs, processors, outputs, and storage that work together to achieve a common goal

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

What is the difference between hardware and software?

A

-hardware is the electronic and physical components that make up a computer system and its peripherals

-software are the programs that run on the hardware

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is an XOR gate? Draw its symbol and corresponding Boolean algebra symbol:

A

-exclusively OR
-on if the inputs are different, off if the outputs are the same

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

How do you make an XOR gate using only the basic logic gates?

A

A.B̅+B.A̅

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Draw a NOT gate and its corresponding Boolean algebra symbol:

A

overbar, eg C̅

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Draw an OR gate and its corresponding Boolean algebra symbol:

A

+

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Draw an AND gate and its corresponding Boolean algebra symbol:

A

.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

What is the order of precedence with Boolean algebra?

A

Brackets
NOT
AND
OR

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

What is the difference between application and system software?

A

-application software is a program with a specific end user task (eg word processing/database/spreadsheet software)

-system software (comprised of the OS and utility programs) supports the operation of the computer system, controlling the hardware, and providing a platform for running application software

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What are utility programs? Give some examples:

A

a type of system software that assists the computer system to run smoothly (eg anti-virus, disk defragmentation, data compression)

Disk defragmentation works with a HDD and moves files closer together on the disk allowing for faster read speeds, freeing up space simaltaneously

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

What is the operating system (OS)?

A

a type of system software that enables the computer hardware to be usable, by providing a graphical user interface (GUI) to hide its complex nature

It is an example of abstraction

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What does the OS manage?

A

-input/output devices
-security (user accounts with credentials, organising access rights)
-allocation of memory
-application software
-processor(s) (eg allocating time for tasks)
(I, SAAP)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

How is a high level programming language different to a low level language?

A

-high level uses more human-readable commands, which often correspond to several low level commands

-low level languages are much closer to the processor and have little to no abstraction, where the commands have a 1:1 correspondence with the machine code

The terms high and low refer to the amount of abstraction that is used in that class of programming language

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

What are the advantages of using a high level programming language? Name one drawback too:

A

-allows for faster development
-easier to find errors in code
-has built in functions/libraries
-hardware-independent so code is portable/shareable

-however it takes longer to test because it must be translated into machine code before use

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

What code does a processor use to execute instructions? Can one type of processor understand another processor’s code?

A

-machine code, as it can only read binary
-no, as each type of processor will have its own specific machine code instruction set (hardware-dependent)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

What is assembly language, and how is it understood by the processor?

A

-a low level programming language that uses 1:1 corresponding mnemonics to simplify machine code, and is specific to a certain type of processor

-requires an assembler to translate the mnemonics into an executable machine code file

17
Q

What is assembly language used for?

A

-controlling specific hardware components
-developing software for embedded systems

18
Q

Name the 3 types of program translators, and give the general purpose of a translator:

A

-they all translate a higher level language to machine code (lower level language) so it can be understood by the processor

-assemblers
-compilers
-interpreters

19
Q

What does a compiler do?

A

translates the entire program into a separate executable machine code file that can be ran by the processor directly

The file it makes is a .exe file

20
Q

What does an interpreter do, and how is it different to a compiler?

A

-translates the program into something which the interpreter software can execute using its own machine code subroutines
-the CPU executes one instruction before the next is translated

-it doesn’t create any machine code like a compiler

21
Q

Give some advantages of using an interpreter:

A

-easier to test and debug, as the program stops when it finds a syntax error
-doesn’t require compiling each time, which is faster

22
Q

Give some advantages of using a compiler:

A

-quicker to run after the machine code file is compiled, as the processor runs the machine code directly without the need of a translator
-users can’t access/edit the source code from the executable file