4.6 - Fundamentals of computer systems Flashcards

1
Q

What is hardware vs software?

A

Hardware is the physical components of a computer system, while software is the name given to program code - sequences of instructions which are executed to perform a task.

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

What is application software?

A

Programs that complete a specific task for the user, such as word processors and web browsers.

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

What is system software?

A

It operates, controls and maintains the computer and its components. It includes the operating system, as well as utility programs , library programs and translators.

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

What is the operating system?

A

Software that provides a virtual machine to the user, which allows the user to control the computer with ease.

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

What is the role of the operating system?

A

Hiding the complexity of the computer and its hardware.

Managing the computer resources which processes compete for: Processors, I/O devices, memory and storage.

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

What are utility programs?

A

Used for completing housekeeping tasks in a computer system such as data backup, data compression and defragmenting hard drives.

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

What are libraries?

A

Libraries are collections of prewritten instructions that can be repurposed for use in other programs.

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

What are translators?

A

Pieces of software that translate between different types of language.

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

What are low-level languages?

A

Directly manipulate the processor and are specific to the type of processor they are written for.

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

What is machine code? What are its advantages and disadvantages?

A

Low-level language that uses 1s and 0s only.

Adv:
- Powerful paradigm
- Programmers not constrainer
- No need to translate before executing
- Useful for embedded systems

Dis:
- Programs are very long
- Difficult for humans to understand
- Prone to errors
- Difficult to debug

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

What is assembly language? What are its advantages?

A

Low level language that uses mnemonics in place of binary instructions. Each instruction has a 1-to-1 correlation to a machine code instruction

  • Easier for humans to understand
  • Debugging easier
  • 1-to-1 correlation to machine code so translation faster than high-level languages.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

What are high-level languages? What are their advantages and disadvantages?

A

Languages that use English instructions and mathematical symbols.

Adv:
- Not platform specific
- Very easy for humans to understand
- Built-in functions save time
- Easier to debug

Dis:
- Must be translated into machine code before they can be executed

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

What is an assembler?

A

Translates assembly language into machine code. Quick and easy since 1-to-1 relationship. Platform specific so different assembler for each processor instruction set.

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

What is a compiler?

A

Translates high-level into machine code. Takes high-level as source code, checks for errors line by line, then translates entire program at once.

If source contains error won’t be translated.

Platform specific.

Compiled program can be run without the requirement for any other software to be present.

Source code difficult to extract.

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

What is an interpreter?

A

Translates high level into machine code line by line. Have procedures that can be used to translate each kind of program instruction.

Program with errors can be partially translated since errors checked at each line.

Both source code and interpreter must be present, resulting in poor protection of source code.

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

Explain compilers with intermediate languages

A

Code first translated to intermediate language - usually bytecode - before machine code. Allows for platform independence.

Bytecode executed on different processors by virtual machine (each processor instruction set has its own).

17
Q

What is source code and object code?

A

Source code - input to translator
Object code - output from translator

18
Q

What is a half adder?

A

A logic circuit with two inputs and two outputs, consisting of an AND gate and XOR gate.

19
Q

What is an edge-triggered D-type flip-flop?

A

A logic circuit used as a memory unit for storing the value of a single bit. It has two input, one for data and another for a clock signal. There is one output, which holds the value of the stored bit. The value of the stored but is set to the value of the data input at each change of the clock signal.

20
Q

How is A AND B represented?

A

A . B

or

AB

21
Q

How is A OR B represented?

A

A + B

22
Q

What is the order of precedence for boolean algebraic operations, highest to lowest?

A

Brackets
NOT
AND
OR

23
Q

What is the value of A . 0 ?

A

0

24
Q

What is the value of A . 1?

A

A

25
Q

What is the value of A . A ?

A

A

26
Q

What is the value of A + 0 ?

A

A

27
Q

What is the value of A + 1 ?

A

1

28
Q

What is the value of A + A ?

A

A

29
Q

What is the value of A . NOT(A) ?

A

0

30
Q

What is the value of A + NOT(A) ?

A

1

31
Q

What is De Morgan’s law?

A

Break the line, change the sign.

e.g. NOT(A + B) = NOT(A) . NOT(B)

Also works in reverse: change the sign, add the line.