Week 1 Flashcards
(33 cards)
How do we measure the complexity of hardware?
Transistors.
We measure the complexity in terms of how many transistors in a particular technology can be integrated onto a single chip of silicon (or silicon dye).
10 billion transistors on a single dye is a good idea of what it should be.
How many lines of code do we expect a modern operating system to have?
10-100 million lines of code
How many lines of code do we expect a modern operating system to have?
10-100 million lines of code
The chip has 20 rectangles. 18 of them are the same, and 2 of them do something different. what are these rectangles?
2: memory controllers - interfacing the chip to memory outside
18: cores
What are the four levels of abstraction, from lowest granularity to highest (where the user interacting with the software sits)?
1) Digital circuits (raw hardware eg wires and transistors)
2) Instruction set (low-level machine code)
3) Operating system
4) Application software
At a high level, what is a computer?
A computer is a machine that has hardware that’s flexible enough to execute a sequence of instructions (a program), which direct it to operate on (process) data.
What are 4 kinds of computers?
1) personal computers
2) server
3) embedded computer - a component that adds functionality to a bigger machine
4) high performance computer
What is a concept?
It’s a model external to reality. Not physical. Ideas.
What is meant by labelling?
Labelling implies counting, or taking a set of items and mapping these onto whole numbers e.g. Sunday = 0, Monday =1, …
These are a finite set of numbers. Such a mapping from names to numbers is called a code.
What is measurement?
Measuring some physical quantity with a measuring instrument.
Result in real numbers, not integers like in labelling.
What are the results of labelling and measurements?
These are data items. Data are just sequences of data items.
Do data processing machines process data?
No, because machines are physical and data (being numbers) are not. We first need to find a way of representing data in physical quantities.
What is data representation?
Data representation involves finding suitable physical quantities to represent numbers. We need representations that can be stored (memory) in physical devices, communicated between devices and manipulated so as to mimic abstract data operations (like addition).
Physical
What’s a common method for data representation, ie representing intangible and abstract numbers in a physical form?
Voltages - easily stored and transmitted over wires.
Optic fibres.
What are two distinct approaches to data representation?
Analogue representations and digital representations
What are the limitations of data representation?
1) Limited accuracy
2) Noise on the environment in all situations - fluctuations that add errors to the measurement. In the case of length, a smaller tremor for example can cause an error.
What are analogue representations?
It’s when we assign real numbers to continuous physical quantities. Eg x metres.
What is a digital representation?
These are binary representations where there is a true/false, 0 or 1 etc.
Good because it blocks out noise errors, as for example, if we have a low voltage (0), then there’s going to have to be a substantial upward spike of noise for it to be seen as high (1).
What is the name for a sequence of bits?
code word
What is a binary code?
Binary code is a mapping from a data set to binary code words.
What is a fixed length code?
If all the code words have the same number of bits, code is fixed length.
e.g. if letters of the alphabet all have the same number of bits
What is a program?
A program is a (finite) set of instructions detailing how input data should be processed to achieve a desired result (output data)
How can we store bits (or code words)?
We need a basic digital circuit that can take a bit and store it, then remember the value indefinitely, and read out the stored value. We will call them bit storage circuits.
What is a byte?
A byte is a string of 8 bits.