Upload
others
View
2
Download
0
Embed Size (px)
Citation preview
(c) Kasim Rashid
1
Kasim Rashid
About this book
This book is intended to go over the essentials of what is needed for the GCSE
Computer Science exam. This is designed to go over the important (but not
all) content in GCSE Computer Science.
The content in this eBook is based on Edexcel GCSE Computer Science (2016)
(9-1 specification.) course, but can be used with any exam board course.
This book is not endorsed by Edexcel.
Any feedback would be much appreciated as it took over two years to get to
this finished point since I started from scratch. Please let me know on TES.
This Book has an Attribution Licence which means "I want credit for my work and to
freely share my resource with no restrictions on what others can do with it."
The material for this booklet has been written by myself with information complied
together from various sources such as BBC bitesize computer science website.
These include the images as well as some form Google. As this booklet is free to use,
all attempt has been used to get images that will not harm any intellectual property.
This is to be used for educational purpose. If you believe that your intellectual
property has been misused, please contact me on TES.
Contents:
1. Problem Solving & Programming Page 2
2. Data and Data Representation Page 14
3. Computers Page 23
4. Network Communication & The Internet Page 32
5. Emerging Trends, Issues and Impact Page 40
Kasim Rashid Computer
Science Teacher at FBS
(c) Kasim Rashid
2
1. Problem Solving & Programming
Algorithms
Algorithms are sets of rules that define a solution to a problem. Algorithms can be
expressed in many ways but typically as a flowchart or in pseudocode:
There are four ways you can interpret algorithms (flowcharts, pseudocode, written
descriptions & program code)
Producing Algorithms - Flowcharts
Display how data flows and decisions are made. The basic ones include:
The flowchart below is created from simple written instructions in the black box.
Stop
Start
Input Value 1 Output
Out of
Range
The start and stop (there may be
more than one Stop) Decision
(Yes/No)
Process (Something that
happens) Input or Output
Value1 >=1
Value2 >=1
Testing data with trace tables
Trace table are used to run through an
algorithm to see how it performs step by step.
Input values: 0, 3, 5
Input Output
0 Out of range
3
5 15
SquareValue = Value1*Value2
Output SquareValue
No
No Yes
Yes
A simple flowchart a number between 1 to
10 and its square
1. Enter the number between 1 and 10
2. Reject values not in range and
request the input again
3. If valid input, calculate the square of
the value
4. Output the value and its square.
Input Value 2
(c) Kasim Rashid
3
Producing Algorithms - Pseudocode
Pseudocode is a way to write algorithms using code-like language.
However these are not actual programming code. There is no "correct" way to write it
Variables and Constants
Variables Constant
Assign values to variables Value always stays the same and cannot change. They are written in capitals so no not to confuse with variables and sometimes are written with a CONST when setting up. E.g. CONST REAL PI
Datatype
Data types are used to identify what type the value is
Data type Description Examples
Integer Whole numbers 3, 0, -777
Float/Real number with decimal points 0.15, -588.432
String Alphanumerical or symbol data "good", “football123???”
Character Single text data 'x'
Boolean One of the other e.g. true or False True/False
Data Structures –Strings
String data is a collection of individual characters. You can manipulate strings, such
as joining strings together (concatenation), find string length, using loops to find each
character in a string etc. Arrays and Lists are the same expect arrays are fixed sizes,
Data Structures –Arrays & 2D Arrays
A variable can store only 1 piece of data at a time. Arrays can store multiple values
under one array name. Each array data is an element and they start at 0
Example, a set of names for 8 people could be stored like name (0), name (1), etc.
Index value 0 1 2 3 4 5 6 7 8
Elements Ash Gary Brock Misty Surge Sabrina Erika Blane Giovanni
An array that contains arrays is called a two-dimensional array. This is usually seen
as a table. In python they are usually declared with the name and the amount of row
and column in square brackets. chessBoard[0,0]
(c) Kasim Rashid
4
Operations & Comparison Operators
Operators are symbols and statements that do certain functions within a
program. There are different types of operator:
○ Arithmetic (mathematical) operators
Arithmetic Operator Purpose
+ addition
- subtraction
/ division
* multiplication
^ exponentiation (powers)
MOD Module (Division Remainder)
DIV Integer Davison
○ Relational operators
Relational operators Purpose
> Greater than
>= Greater than or equal to
< Less than
<= Less than or equal to
== Equal to
<> Not Equal to
○ Boolean (logical) operators
AND OR NOT AND - Retunes true if both conditions are true
OR – Returns TRUE id any of the conditions are true.
NOT – Reverses the outcome so true becomes false and vice versa
(c) Kasim Rashid
5
Pseudocode Code – Writing Pseudocode
Below is the main pseudocode from different exam boards from Edexcel, other exam
boards, slightly change their pseudocode, but the table is still helpful.
structural
component Pseudocode
Comment # comment text
Input (collects data from user)
RECEIVE <variable/identifier> FROM (data type) <device>
Output (outputs data)
SEND <expression/variable> TO DISPLAY
Assignment – assigns data to the Array, variables, constants
SET variableName TO <value> or <maths calculation>
SET arrayName TO [value, value, value…] SET arrayName[index] TO <value>
SET twoDArrayName[row,column] TO <value>
CONST (data type) <CONSTANTNAME>
Selection/ Conditional Statement (selects which data to run based on the condition)
IF condition THEN
<true alternative command>
ELSE
<false alternative command>
ENDIF
IF condition THEN
<true alternative command>
ELSEIF condition THEN
RECEIVE Name FROM (STRING) KEYBOARD
RECEIVE YesNo FROM (CHARACTER) READER
SEND ‘Welcome to my system. Thank you for turning me on.’ TO DISPLAY
SEND variable TO DISPLAY
CONST REAL PI
SET PI TO 3.14159
SET circumference TO radius * PI * 2
SET chessBoard[8,8]
SET chessBoard [8,8] TO Rook
SET classSize TO [ ]
SET classSize TO [1:30]
SET classSize TO [16, 16, 19, 17, 15]
SET Age [3] TO 21
SET age TO 18
SET count TO count +1
SET count TO Count -1
SET name TO “Ben”
SET total TO total + total
IF number > 5 THEN
SEND “Value is greater than 5” TO DISPLAY
ELSE
SEND “Value is zero or less” TO DISPLAY
ENDIF
(c) Kasim Rashid
6
<true alternative command>
ELSE
<false alternative command>
ENDIF
Iteration (WHILE – pre-condition, FOR – post condition [count controlled] REPEAT – post condition [done in expression]
FOR variable FROM expression TO expression DO <command> <command> END FOR (Some arrays will be END FOREACH)
WHILE condition DO <command> <command> ENDWHILE
REPEAT <command> <command> UNTIL … (Some repeats have END REPEAT)
IF (numA = 0) AND (numb =1) THEN
SEND numA TO DISPLAY
ELSEIF numB > numC THEN
SEND number TO DISPLAY
ELSE
SEND number TO DISPLAY
ENDIF
WHILE dangerLevel = 0 DO
SEND ‘All is well’ TO DISPLAY
END WHILE
SET total to 0
FOR count FROM 1 TO 10 DO
SEND “input pounds” TO DISPLAY
RECEIVE number FROM (INTERGER) keyboard
SET total TO total + number
SET count TO count +1
END FOR
SEND total TO DISPLAY
REPEAT
SEND “Please enter A or B” TO DISPLAY
RECEIVE letter FROM (CHARACTER) keyboard
UNTIL response = “A” OR “a” OR “B” OR “b”
(c) Kasim Rashid
7
Data validation checks (String Handling)
Length check - LEN (variableName) Presence check - variableName = NULL Range check – (condition) <logial operator> (condition) Using & with a STRING and a non-STRING will coerce to STRING. For example, SEND `Fred’ & age TO DISPLAY, will display a single STRING of `Fred1. This can be called Concatenation.
File handling (how to read/write to file)
READ <File> <record> WRITE <File> <record>
Declaring Function/ Procedure (sub-programs) Used as a program within a program) – consists of local variables
PROCEDURE id name (parameter 1, para2, ...) <command> <command> END PROCEDURE
FUNCTION <id name> (<parameter>, …) BEGIN FUNCTION <command> RETURN <variable> END FUNCTION
Calling Function/ Procedure
CALL <function/parameter id name> (parameter)
AddRace (Race1, Race2, Race3)
FUNCTION AddRace ((Race1, Race2, Race3)
BEGIN FUNCTION
SET Total to (Race1 + Race2 + Race3)/3
RETURN Total
END FUNCTION
PROCEDURE CalculateAverage (Race1, Race2, Race3)
BEGIN PROCEDURE
SET Average to (Race1 + Race2 + Race3)/3
END PROCEDURE
You can either create a flowchart
or pseudocode to show the same
solution
It is up to you to decide which one
is going to be more efficient when
show a solution to a problem
using these methods.
LEN(password)
READ MyFile.doc Record
WRITE MyFile.doc Answer1, Answer2, ‘xyz 01’
LEN = NULL
(age > 10) AND (age < 17)
(c) Kasim Rashid
8
Subroutines (Procedures and Functions)
Subroutines are used as a sub-program within a program and helps with
decomposing your program to make it easier to structure.
Using subroutines makes it easy to read as there is no long block of text, reduces
duplication as once written it can be called to be reused, instead of writing the code
again and more reliable as it can be tested.
Parameters
Parameters are like variables that are used to pass
values into a subroutine. They are declared inside
the brackets after a subroutine's name.
There are two types of subroutines functions and
procedures.
Procedures
Procedures are basic subroutine.and are blocks of
instructions that run but don't return a value back to the
part of the program that has called it. Procedures can
have parameters
They may have one or more parameters, but they don't have to
Functions
Function are subroutines that always return an output value
and have at least one parameter.
Functions are defined in Python like procedures
(i.e. def functionname()),
Global and local variables
Variables declared inside a subroutine can only be used within the subroutine. These
are called local variables as they can only be accessed within the subroutine.
Global variables on the other hand can be accessed by any part of the program. If
accessed in a subroutine, the global keyword needs to be used.
def triangleArea (height, width):
area = height * width/2
return area
The example shows both a global
and local variable with the same
name been run and producing
different results.
(c) Kasim Rashid
9
Programming Constructs – in Pseudocode code
Sequence Selection The flow goes from top to bottom For example, a program to input two numbers then output their total.
Usually used for as choices. The IF-THEN-ELSE construct allows the program to take one of several paths. To determine if a person can go onto a ride in a theme park, we might use:
Iteration The program completes a set of instructions a number of times until a condition is met.
Count-control Condition Control
To make a program execute a set of commands several times, we can use a count-controlled loop. In a count-controlled loop, we use an index value to tell the program how many times to complete the loop. For example, to print a times table
In a condition-controlled loop, we tell the program to either stop executing the commands when a condition is reached or tell it to execute the commands while a condition is true.
Repeat-Until executes the code that follow until a condition is true.
While-End executers the code that follows while a condition is true.
.
Input num1
Input num2
Total = num + num 2
Output total
Get height
IF height >= 1.5M THEN
Alow onto ride
ELSE
Do not allow onto ride
ENDIF
FOR k= 1 TO 12 OUTPUT k “times 7 is k*7 Next K END FOR
Count = 0 Total = 0 REPEAT INPUT “enter number” value Count = count +1 Total = total + value INPUT”More numbers?” more UNTIL more <> “yes” OUTPUT total,total/count
Count = 0 Total = 0 More = “yes” WHILE more = “yes” INPUT “enter number” value Count = count +1 Total = total + value INPUT”More numbers?” more ENDWHILE OUTPUT total,total/count
(c) Kasim Rashid
10
Programming Constructs – In Flowcharts
Sequence as flowcharts Selection as flowcharts
Iteration as flowcharts
WHILE loops (Condition control) [pre-condition]
REPEAT UNTIL loops [Post-Condition
FOR Loops (Count-controlled) [Post-
Condition]
Start
Start
stop
stop
(c) Kasim Rashid
11
Algorithms - Searching and Sorting
In a data structures, you can using sorting and searching algorithms
Sorting Algorithm Searching Algorithm
A sort algorithm sorts item of data within a data set. There are two main sort algorithms:
Bubble Sort
Merge Sort
A search algorithm finds a specific item of data within a data set. There are two different search algorithms:
Linear search
Binary search
The merge sort algorithm: Use the “divide and conquer” where you break down the list by splitting, until every item is on its own. Then soft list will merge once sorted Merging ordered lists is easier than unordered lists
The Bubble Sort algorithm:
1. Compare first and second item, if the 2nd item is smaller than, swap, other- wise leave them
2. Move onto the 2nd and 3rd item and repeat the steps until the end.
3. This is the end of the first pass
4. Keep repeating until no more swaps are needed to sort.
The linear search algorithm:
1. Start with the first item
2. Compare the item to target
3. if matches then stop search
4. Move onto the next item in the list if match not found.
5. Repeat until item is found or every item has been checked
6. If every item has been checked and the target has not been found then it is not in the list
The binary search algorithm:
1. Find the middle item in dataset
2. Compare middle item to target:
3. if matched then item found
4. If target is smaller, then ignore the bigger section.
5. If the target is larger than ignore the smaller section.
6. Repeat until the target has been found or the dataset cannot split any more
EXAMPLE: Break down following until it is on its own
41 73 4 1 7 3 Then you merge 14 37 1 3 4 7
4 1 7 3
1 3 4 7
EXAMPLE: Sort the following list:3, 2, 4, 1, 5 • 3, 2, 4, 1, 5 (2<3) • 2, 3, 4, 1, 5 (3<4) • 2, 3, 4, 1, 5 (1<4) • 2, 3, 1, 4, 5 (4<5) • 2, 3, 1, 4, 5 (First pass completed) It will do it until the numbers are in order and there are no more passes.
EXAMPLE: Use linear search to find 3
4 7 3
1. Compare 4 with 7
move to next item 2. Compare 7 to 3 3. 3 found
EXAMPLE: Use binary search to find 3
1 2 3
1. Go to middle which
is two. 2. Anything smaller
than two gets ignored.
3. Go to the right as it is larger
4. 3 is found.
GOOD – Efficient BAD – Whole algorithms runs
GOOD – Simple BAD – Slow on long lists
GOOD – easy & items can be in any order BAD – Slow
GOOD - Efficient BAD - Data must be ordered
(c) Kasim Rashid
12
Algorithm Thinking – Computational thinking
Computational thinking (CT) helps understands complex problems in order to
form a solution.
There are two main things to computational thinking:
Abstraction - removing details that are not relevant to solving the problem
Decomposition - breaking a problem down into smaller pieces
Abstraction
Abstraction is a CT technique that simplifies a problem by removing unnecessary detail
so that you can focus on the important parts
EXAMPLE
When doing a find Wally puzzle, to find Wally, you focus on his clothes in the picture, when
trying to find him and ignore everything else.
Maps can also be seen as abstraction as they are representative of routes. They don’t show all
the detail e.g. signposts, grass etc.), only outlines.
In programming, Variables to represent real entities such as the age of a player or score.
.
Decomposition
Decomposition is when you break down a complex problem into smaller parts. Each part
can then be solved separately.
EXAMPLE
When you creak down a dance move into steps, so you can learn it.
When you break down a programming code into subroutines such as functions or procedures.
.
(c) Kasim Rashid
13
Readability of code
There are benefits of producing programs that can be broken down so they are
easy to read so another person can understand them easier. This is better than
having one huge block of code. The techniques include:
Comments – which explain parts of the code usually done with # or //
Descriptive names (variables, constants, subprograms) – must fit into the
purpose of program.
Indentation – Code is spaced, so you know where it belongs to e.g. IF
statements, have the command after the condition.
Testing a program to find errors.
You can test a program in many ways such as using suitable test data, using trace
tables and inputting validation to checking that input data meets certain criteria.
The purpose of testing errors is to see if there are any bugs and if the program
works with both correct and incorrect data.
Types of test data
There are lots of test data that can be used:
Valid data (normal) - data that is correct and know will produce the right
output.
Invalid data - data that you know is not going to be acceptable
Boundary data - data that is just on the edge of the range.
Erroneous data - data that of the wrong type altogether, e.g. entering 'Brock'
instead of a real number.
Types of Errors
Syntax errors – problems with the code that is written
Logic errors – conditions that cannot be met, infinite loops, incorrect
expressions. This can lead to run time errors.
Runtime errors - Errors that occur when the program is running, e.g. system
run out of memory.
Test plans
Test plans are like a checklist that goes through each tests with test data.
Each test on the test plan should refer to one success criteria. Each test
usually ends up with a "pass" or "fail".
Test # Test Test data Outcome
1 Only enter age as a whole number
12 Expected to accept data
Misty Expected to no accepted data
(c) Kasim Rashid
14
2. Data and Data Representation
Morden computers work in binary because it is easy to represent two states.
Made of loads of transistors a tiny switch activated electronic signals Binary is
a number system with just two symbols, 0 and 1. They can be represented by
numbers, text, sound and graphics.
₣ Each digit in a binary number is called a bit (Binary digit) 27
₣ Denary uses base 10 - tens, units (100, 101) and binary uses base two (20, 21)
Converting from binary to denary
The binary number system works like the familiar base10 system using multiples
of two instead of ten, for column values. In binary, the column values are:
128 27 64 26 32 25 16 24 8 23 4 22 2 21 1 20
If we want to know what the binary number 10110 is in denary (base 10). Then we
put the number into the table and add together the column values where there’s a ‘1’.
Values 128 64 32 16 8 4 2 1 Total
Bit 1 0 1 1 0 32 Add 16 4 2
8 bits in a byte, the column goes up to 255 and 8 columns. To make 256 you add
another column, but it will become a more
than one byte
Units
A group of 8 binary digits or bits is called a
byte. As in base 10, we have numbers for key
values based on 210 or 1024 bytes.
Converting from denary to binary
One method for converting denary (base 10) to binary (base 2) is repeated
division by 2, recording the remainder each time.
For example, convert 205 base into binary.
Number ÷ 2 Total Remainder Binary Number for 205
205 ÷ 2 102 1 10110011 205 in base 10 =110011001 in base 2 (binary)
102 ÷ 2 51 0
51 ÷ 2 25 1
25 ÷ 2 12 1
12 ÷ 2 6 0
6 ÷ 2 3 0
3 ÷ 2 1 1
1 ÷ 2 0 1
Values Name
8 bits 1 byte
1024 bytes 1 kilobyte
1024 kilobytes 1 megabyte
1024 megabytes 1 gigabyte
1024 gigabytes 1 Terabyte
Half a byte, 4 bits called a nibble.
(c) Kasim Rashid
15
Negative Binary Numbers
Sign & Magnitude - In a bit pattern, the first bit shows positive (1) or negative (0).
The other seven bits would be used to store the actual size of the number.
Negative Binary 1 0 0 0 1 0 0 1
The smallest negative binary number using this method is -127 (or 11111111)
the largest possible number is +127 (or 01111111).
Negative numbers: Two's complement (TC) With TC, the bit far left of the bit most significant bit (MSB) MSB MSB is used to indicate positive or negative and the remaining bits are used to store the actual size of the number. Positive numbers always start with a 0 Four-bit, positive, two's complement numbers would be 0000 = 0 up to 0111 = 7.
Negative numbers always start with a 1. Smallest negative number is the largest binary value 1111 is -1 down to 1000 = -8.
Using two's complement for negative numbers
1. Find the positive binary value for the negative number you want to represent.
2. Add a 0 to the front of the number, to indicate that it is positive.
3. Invert or find the complement of each bit in the number.
4. Add 1 to this number.
Examples Find -1 using two's complement numbers
1 = 001 o Adding 0 to the front becomes 0001
'Inverted' becomes 1110 Add 1 = 1111 (-8 + 4 + 2 + 1 = -1)
Find -4 using two's complement numbers
4 = 100 o Adding 0 to the front becomes 0100
'Inverted' becomes 1011 Add 1 = 1100 (-8 + 4 = -4)
This table shows the two's complement set for 4-bit numbers.
Denary 4-bit binary
-8 1000
-7 1001
-6 1010
-5 1011
-4 1100
-3 1101
-2 1110
-1 1111
0 0000
1 0001
2 0010
3 0011
4 0100
5 0101
6 0110
7 0111
The first bit, 1, indicates a
negative number (sign)
The other seven bits indicate the
number, 0001001 = 9 (magnitude)
(c) Kasim Rashid
16
Adding Binary Numbers
Adding in binary uses the same approach as in base 10, we add the values and if
the values is larger than the column, we “carry” the value into the next column.
To add 1101 to 1011 in binary
1 1 0 1
+ 1 0 1 1
Answer 1 1 0 0 0
If a computer uses storage values that are 8 bits long and we add together
11000010 and 10111010, the following happens. We need a ninth binary digit.
1 1 0 0 0 0 1 0
+ 1 0 1 1 1 0 1 0
Answer 1 0 1 1 1 1 1 0 0
If our computer has only 8 bits to store, this last bit will be lost which is called
overflow. The result of the addition is too big to fit in the available space.
Binary Shifts (Logical Shifts)
A binary shift is a way to perform multiplication or division on a binary number,
where each digit is moved ("shifted") per column to the right or left. Extra 0 bits
are added to the start or end of the binary number to fill any missing spaces.
Shifting Left – Each time you shift left, you multiply the binary number by 2.
o 0010 1100 left-shifted twice = 1011 0000 (multiplied by 2 twice = x4)
o 0010 1100 is 44 in denary and 1011 0000 is 176 in denary.
Shifting Right – Each time you shift right, you divide the binary number by 2.
o 1000 right shifted twice = 0010 (divided by 2 twice = /4)
o 1000 is 8 in denary and 0010 is 2 in denary
Binary Shifts (Arithmetic Shifts)
Arithmetic shifts are used with positive/negative binary numbers. This means the
first bit in the number is kept in place to show it is a positive or negative number.
Extra 0’s or 1’s are fill in either at the end (shift left) or after the first digit (shift right).
Arithmetic Shifting Left –shift left, you add a 0 at the end.
o 01111111 left-shifted once = 01111110 (zero added at last bit)
Arithmetic Shifting Right –shift right, add the sign bit number after first digit.
o 11111100 right shifted once = 11111110 (one added after first digit.)
Sometimes the shifts are not always accurate and may cause overflow or not
rounded correctly.
1+1 = 10 (in binary), we write 0 for
the answer and carry 1
0+1+1 = 10 so we write 0 and carry 1
1+0+1 = 10 so we write 0 and carry 1
1+1+1=11 so we write 1 and carry 1
0+1=1 so we write 1
(c) Kasim Rashid
17
Hexadecimal numbers
Large binary numbers hard to remember – Used for colour references (RGB)
Hexadecimal is easy to remember. An 8-bit byte splits easily into 4-bit nibbles.
128 64 32 16 8 4 2 1
8 4 2 1 8 4 2 1
These are now 16’s
In four bits, the largest value we can
store is 1111 or 8+4+2+1 = 15
If we are to represent each nibble using
a single digit, we need more symbols.
In hexadecimal, we use the letters A
to F to represent the base 10 numbers
10 to 15.
Converting between hexadecimal and denary
Converting from Hex (base 16) to Denary (base 10) uses column values.
27 hex in base 10 is
32+7=39 in base 10
Convert BD in hex into base 10
176+13 = 189 in base 10
To convert from base 10 to hexadecimal, we can use the repeated division
approach: divide by 16 and record the remainders until the results is 0.
Convert 197 in base 10 into
hexadecimal
Base 10 (Den) Base 2 (Bit) Base 16 (Hex)
0 0 0
1 1 1
2 10 2
8 1000 8
9 1001 9
10 1010 A
11 1011 B
12 1100 C
13 1101 D
14 1110 E
15 1111 F
16 10000 10
16 1
2 7
2 x 16 = 32 7 x 1 = 7
16 1
B D
11 x 16 = 176 13 x 1 = 13
197 ÷ 16 = 12 5
12 ÷ 16 = 0 C
Answer C5
197 base 10 is CS in hexadecimal.
(c) Kasim Rashid
18
Converting between binary and hexadecimal
To convert from binary to hexadecimal, split the binary number into two nibbles
and convert each one to get the hexadecimal equivalent.
Convert 10100011 (binary) into hexadecimal
8 4 2 1 8 4 2 1
1 0 1 0 0 0 1 1
10 in base 10 = A in Hex 3 in base 10 = 3 in Hex
So 10100011 in A3 in hexadecimal
Converting between hexadecimal and binary
To convert from hexadecimal to binary, we replace each hex digit with the
equivalent to the binary nibble.
Convert BD (Hex) to a binary number
o B (Hex) = 11 (base 10) = 1011 (binary)
o D (Hex) = 13 (base 10) = 1101 (binary)
BD in hex is 10111101 in binary
Convert C5 in hex to a binary number
o C (Hex) = 12 (base 10) = 1100 (binary)
o 5 (Hex) = 5 (base 10) = 0101 (binary)
C5 in hex is 10111101 in binary
Data representation
Characters
- Symbols display by a computer are represented by a code.
- The codes used are stored in binary which determines how many symbols.
- ASCII uses 7 bits so can provide 127 characters or symbols plus a null
character (128 in total- 27). Extended ASCII 8 bits - 256 characters
- ASCII is in order - When we sort words ‘Zebra’ comes before ‘apple’
(c) Kasim Rashid
19
Images – How They Are Stored
Images are stored in binary on a computer. This image of flowers is stored as
many binary values.
Computers are able to work out how to turn these binary values into the image
because the file with the binary data contains metadata (data about the data).
The height and width of the image is measured in pixels:
- A pixel is one “dot” in the image.
- The number of bits we use for a pixel determines how many colours each
dot can represent:
Images - Colour depth
The more Bits per Pixels (BPP) the greater the colour depth and more bits stored
16 BPP is called high colour --------------------------------- 24 BPP is called true colour
Bitmap images digital cameras, online - file types JPEG, GIF and PNG.
Bitmap images are organised as a grid of coloured squares called pixels.
When zooming - the pixels are stretched why bitmaps appear as poor quality
The greater the number of bits to represent each pixel, the greater the number of
colours that are available for each pixel.
The resolution of a bitmap image is number of pixels that make up the image.
Higher resolution & Colour depth means a bigger file size.
Images - Calculate image File Size (a formula is used)
file size = Colour-depth x high image x width image
e.g. 100 x 100, 8 bit image = 100 x 100 x 8 = 80000
Binary values of a photo
stored in a file
(c) Kasim Rashid
20
Sound
Sound files can interpret the sound data accurately. When sound is recorded by
a computer its volume (amplitude) is logged as binary values at regular intervals.
This process is called sampling.
The data stored includes:
- Sample rate - Makes continuous signal a non-continuous signal. It determines
the range of values that are available to represent the amplitude
- Bit rate - the number of bits required to store one second of audio.
Sound is analogue form (continuously varying) form.
To transfer sound to a computer, it needs to be digitally sampled.
The sample interval is used to describe the sample rate and is the time between
samples being taken – the higher the sample interval, the lower the sample rate.
Sound - Calculate sound bit rate (a formula is used)
bit rate = sampling frequency x sample size
o e.g. a CD uses one audio channels, sampled 44,100 times per second,
using 8-bit samples - bit-rate expression is 1 * 44100 * 8
When sound is sampled at a low rate: When sound is sampled at a high rate:
Very few samples are taken
There is poor match between original sound and sampled sound.
A small size file is required.
Many more samples are taken
These is a good match between the original sound and the sampled sound
A large size file is required.
A high bit rate means accurate sampling, better quality & bigger storage.
Digital audio quality – factors
Factors that improve the quality of audio/ Increasing the sample size - allows for greater sound wave accuracy
Increasing the sampling frequency (sample rate)
Taking samples more often means matches more to the original recording
Doing these two techniques will make a larger file.
Factors that affect the quality of digital audio include:
sample rate - the number of audio samples captured every second
bit depth - the number of bits available for each clip
bit rate - the number of bits used per second of audio
(c) Kasim Rashid
21
Compression
Files compression means reducing the size of a file. This is done in order to:
- Save storage space on device media
- Reduce transmission times on a network, especially the internet
One disadvantage of using compression slower operations.
There are two main types of file compression
Lossy Compression Lossless Compression
Lossy Compression works by removing some of
the data from the file.
The data removed cannot be recovered.
Lossy compression is used in file formats such
as MP3, JPEG – good for websites.
The more an image is compressed, the less
details will be visible.
Lossy compression algorithms often attempt to
remove the least important details such as the
highest frequency sounds in a music file that
many people cannot hear.
Lossy compressions can produce dramatic
savings in file size.
Lossless Compression does not
store repeated details such as lots
of blue pixels in a photo that
includes the sky.
It allows the original file to be
reconstructed exactly.
A computer program will not work
if much of it has been removed to
save space.
Here is one way lossless compression can be used.
A table of details such as words or pixels is set up in order to store the data, the
table is stored plus an index for each word whine it occurs.
1 2 3 4 5 6 7 8 9
If you are not fired with Enthusiasm will be
Therefore, a sentence could be written from the table such as 1234567289567 aka if
you are not fired with enthusiasm you will be fired with enthusiasm
Run-length encoding (RLE) is a form of lossless compression that replaces
sequences with more efficient representations. Example in a representation of
colour rrrbbyyrgggr can be RLE to 3r 2b 2y 1r 3g 1r (always remember that when it
comes to data been on its own, you must always include the 1 e.g. 1r
(c) Kasim Rashid
22
Encryption and Caesar Cipher
Encryption "scrambles" data by applying an encryption algorithm to the binary
data. This can be used on a file. Encrypted data can only be decrypted by applying a
secret "key”,
The most famous of these is the Caesar Cipher. They are used with alphabets to
decrypt code. They can be encoded by shifting the letters a certain way to decode
In the example below, the Caesar Cipher has been
shifted three places to the left (-3). E.g. E becomes B.
When it does reaches A, it will go to the back of the
alphabet again e.g. A = X
Database
Structured data refers to data that that is grouped and belongs to a category. E.g.
data on a list is structured as it all belongs to the list.
A database stores structured data like entities and attributes on a system.
An entity is a representation of an object in the real world, while an attributes
describe each entity
Data models (Flat file vs Rational)
Flat file database
Just rows (records) & columns (fields), suitable for address
book using just a spreadsheet
Relational database
Relational databases are common and flexible. Relational
databases store data in separate tables. The tables are linked
together so related data is easily extracted.
You can show these
relationships through entity-
relationships diagram ERD
Important things to know about a database
Record (row) – all related data about 1 thing can
be shown in a row.
Field (column) – a piece of data that has different
attributes,
Primary Key - a field that uniquely identifies each
record within a table.
Foreign Key - a field in table that is used as a
primary key field in another table. These two
tables are linked.
■
(c) Kasim Rashid
23
3. Computers A Technical system is collection of hardware and software that work together to
achieve some data processing task. The input–process–output (IPO) model (shown
below), or input-process-output pattern, is a widely used for describing the structure
of the processing of a device.
Computer System Input Output Processing
ATM Card details Balance, Cash Check balance, adjust balance
GPS Signals from satellite, Input from User.
Route, Warnings Check Position, Locate on Map
Travel Card (Oyster Card)
Money, Input Journey
Display Balance Calculate Journey Cost
Embedded Systems Part of a larger system and are usually control systems and portable devices. Designed for as fixed purpose. - USB, - Scientific Calculator - Controllers of machinery in factory.
Advantages Disadvantages - Faster - Cheaper - Less power use
- Devices many not use the same systems - Does not upgrade with technology - Hard to backup
Computer Architecture
Architecture internal logical and organisation of the computer hardware.
Von Neumann architecture basis for all modern digital computers.
All data and instructions are stored in RAM, as binary numbers
The Central Processing Unit (CPU)
The CPU carries out all the processing in the computer.
The Arithmetic and Logic Unit (ALU) carries out all A & L operations
The Control Unit (CU) uses signals to control the flow of data in the CPU.
Registers (R) [Internal memory] - small amount of fast temporary memory
where ALU/CU can store/change instructions values. Some include the
accumulator (ACC) and program counter (PC)
Secondary Storage
Main memory Storage
Input Processing Output
(c) Kasim Rashid
24
The Fetch-Execute Cycle (basic explanation)
The input that is processed and outputted is data and instructions. Data is a
value, while instructions tell the computer what to do with the value.
The Fetch-Execute Cycle (Advanced Explanation)
Fetch
The address of next instruction to be
processed is copied from Program
Counter and is incremented to point
to the next instruction that will be
needed when the fetch decode
execute cycle starts again
Execute
The operation is performed by the
ALU which given by the Control Unit.
Decode
The Control Unit decodes the
instruction and sends control signals
to the component and the cycle starts
again.
.
The speed at which a CPU can process data depends on:
The CPU Clock
How fast the CPU can run The speed of the fetch-execute cycle is determined by an electronic clock chip. The clock speed is measured in cycles per second, known as hertz (Hz)
Cache Memory
Small amount of storage - temporarily holds instructions that the CPU is likely to reuse The CPU control unit checks cache for instructions before requesting data Data that is in use is transferred to cache memory to make access to it faster.
Type & number or processor cores
Multi-core processors use multiple CPU’s working together. The CPUs can all fetch, decode and execute instructions at the same time.
Advantage Disadvantage
more data is processed simultaneously
More complicated operating systems needed to manage them.
Fetch
DecodeExecute
1. Fetch the instruction from
memory
2. Decode the instruction to
find out what processing
to do.
3. Execute the instruction
Fetch
Decode
Execute
(c) Kasim Rashid
25
CPU - Running a stored program
For a CPU to execute instructions translated into Machine code Machine code is simple binary codes that activate parts of the CPU.
The CPU only performs a few basic functions: Cache
Cache memory is very fast memory in the CPU and used to store frequently
used data and instructions so the CPU can retrieve them quickly.
CPU and memory working together
Storage - Primary Storage (Main Memory)
T
Random Access Memory (RAM) Read Only Memory (ROM)
Volatile (data is lost when power is turned off and can change)
Non-Volatile (data is remembered when the power is turned off and can’t change)
Can be accessed and changed by the computer at anytime
Programmed during computer manufacture
Stores programs and data being used by the computer
Stores instructions and data required to start up the computer
Contains the operating system Contains the boot program
Large (4GB or more in a typical computer) Small 1 or 2 MB required for boot.
CPU Cache Main Memory
Data sent to CPU
Data copied to
cache
Request for Data If data not in cache: Request
data from main memory
RAM
Is the main place for storing instructions and data
whilst a program is being executed. It is also called
main memory. Programs are loaded on RAM and
data is sent one by one to decode and execute.
ROM
Is a flash memory chip that contains a small
amount of non-volatile memory
Computers use binary values because it is easy to tell to switch, on/off 0/1.
The Von Neumann principle uses binary to store data and instructions.
Data and instructions are stored in RAM
(c) Kasim Rashid
26
Magnetic Hard Disk
A magnetic hard disk stores the operating system, installed programs and user data. Hard disks are:
Strong & Reliable
High Storage Size
Low cost
Optical Disk
An optical disk is excellent for transferring files or distributing software. Optical disks are:
Lightweight & Portable
Good Storage size
Low cost
Solid state Memory
Memory consumes little power. memory is:
Small Size
Used in hand held devices
East to transfer files
Storage - Secondary Storage
As well as primary stage. Secondary storage
(backing storage) can connect to the computer.
Secondary storage stores data and programs when the power is switched off.
Binary Logic - All computers work in binary and use Truth Tables for calculations.
Some questions will require you to draw logic tables from expressions –
Example: X = A AND (NOT B)
Truth
Table Input Output
0 1
1 0
Input A Input B Output
0 0 0
0 1 0
1 0 0
1 1 1
Input A Input B Output
0 0 0
0 1 1
1 0 1
1 1 1
Define input is going to be different for the value of the output
both inputs must be postive for it to be positive
If either or both are positive the output is positive
Input A Input B NOT B Output (X)
0 0 1 0
0 1 0 0
1 0 1 1
1 1 0 0
(c) Kasim Rashid
27
Software
One of the main software on a digital system is an operating system. There are
different types of operating systems on different devices (i.e. phones, computers,
games consoles etc.)
Operating System (OS)
The operating system is a set of programs that controls the hardware and lets
the users and applications work with the computer.
Kernel main part of the OS that actually makes the hardware do things.
Shell Software users need to communicate with the kernel.
OS Management
Memory Management
Operating systems decide what goes where in memory. This is so memory efficient and important data is not overwritten during the running of a program.
1. To do this, memory is divided into pages.
2. A program, when it is been executed, is called a process.
3. When a job needs to be done, the process is loaded into a vacant page. The operating system keeps track of this and protects it from been overwritten by other processes.
Peripheral Management
A file is a named store of data on a secondary storage medium. Files can be: - Data files – word processing, database - Program Files – Operating Systems (OS) - Configuration Data – Windows registry
OS needs to tracks files. Stored on secondary storage copied to main memory when needed.
1. The OS must know where these files are located on the storage medium. 2. When you save a file, the OS looks up where there is free space on the
medium and makes a record of where it is located. 3. Next time the file is used the OS looks up location & finds and retrieves it.
User
Application
Operating system Hardware
(c) Kasim Rashid
28
Managing the CPU with the OS – running software
When the OS runs a piece of software it has to find the program files on the storage drive load them into main memory and instruct the CPU to start
OS - Multi-tasking
Multiprogramming: Serval programs loaded into memory at the same time.
Multitasking: the processes (programs) are running at the same time
E.g. Word and print so the OS swaps the processes from one to another
Files and Directories
OS organise files on secondary storage Likely Hierarchical systems:
o Files are stored in Directories (folders) and include
subdirectories and file extension (.mdb Access database)
(c) Kasim Rashid
29
Various types of software System software Software that controls hardware and data between locations (OS) - Hides complexities - No program needs to be written
Application software Handles jobs that users do (Word on PC)
Modelling (simulation software) Models software on real world e.g. flight simulation
Utility Software
Utilities software tools that help maintain the
system easier.
Fragmentation and Defragmentation
Larger files than segment files are split into blocks across many segments.
If a file is split across many locations, it takes longer to read and write it.
Each block contains information (pointers) about the location of the next block, so
the operating system can follow to pointers to recover the whole file.
A process called defragmentation is used to access files faster. Reorganises
files that have been split up on secondary storage, so fragments are close together.
Software Security
There are lots of software such as anti-virus/malware/spyware that help stop
Replicator programs attaching themselves to legitimate programs. They help stop:
¶ Damaged files ¶ Taking control of a computer
¶ Getting Confidential data
Other programs like backing up software can also be used to secure your data.
(c) Kasim Rashid
30
High level vs Low level language
High-level language
A high-level language command may represent serval machine code
instructions as assembler:
- In a high-level language, we can usually multiply two numbers together in
one command.
- At machine level, that is not possible and it has to be repeated addition.
High-level commands have to be turned into binary instructions the machine can
understand, this process is called translation.
There are two ways of translating high-level code to machine code:
- Complier: converts the whole code into machine code before running it.
- Interpreter: converts the code one instructions at a time, running each
instruction before translating the next
Source code is the code written by the programmer.
A complier translates this source code into an object code in machine language.
Object code runs independently of the source code and translator
Translator Advantage Disadvantage
Assembler Precise and direct instructions to the
computer hardware
Difficult to code
Limited range of commands available
Complier Code runs quickly once complied
Difficult for others to modify no access
to the source code
Process can be slow
Errors generated at one - hard debug.
Interpreter easy to debug - executes 1 at a time
Tested in stages - Code
More portable - any machine
Interpreter needed on target machine
interpreter takes up space in memory
Code executes more slowly
Represents
Complier
Interpret
er
(c) Kasim Rashid
31
Integrated development Environment (IDE)
Translators usually include an IDE to help programmers.
IDE Features include:
- Source code editor – indents & colour coding words, variables and comments
- Error diagnostics and debugger – warning identify potential problems with
code and listing errors with the code
- Run time environment – allows the developer to run code during development
to check for logical errors.
- Translator (complier or interpreter) – complies or interprets the source code in
to runnable machine code
Low-level Language
This is also a low-level language.
- An assembler translates assembly language (low-level) into machine code (lower level. Assembly language is a low-level language - reflects operations of CPU.
- As with machine language, each instruction causes one processor operation.
- Assembly language uses mnemonics to represent instructions.
- Machine code is the lowest language and is read only in binary – 0 & 1
Blue J
(c) Kasim Rashid
32
4. Network Communication & the Internet
Networks
A network is a collection of computers. Each device on a network is a node.
- Computers process and store data
- The data is represented as binary as it is very simple way to store data.
- Binary data is easy to transmit without errors, because distinguish of 0 and 1.
VPN
LAN WAN
LANs cover one site (office, university campus)
Connected and maintained (outsource) using company owned equipment
WANs covers a large area (city, country) This could be a network of school
computers Not all WANs might meet local needs
Advantage Advantage
share devices - laser printer fileserver can be used to share
documents and files centrally Email - sent between computers Centrally managed e.g. one copy of
word for all workstations
Wider geographical coverage - for accessing files and sending emails.
Messages can be sent very quickly Everyone can use the same data-
older information cannot be rewritten
Disadvantage Disadvantage
Security due to authorised access Networks are difficult to set up and
need to be maintained by technicians. One down all done file server is down,
all users are affected.
Security - against hackers and viruses. Lot of maintaining - network supervisors
and technicians to be employed. Expensive and complicated
(c) Kasim Rashid
33
Network hardware
This is to do with creating receiving and routing electrical signals.
Network Interface Controllers/cards (NICS) [LAN Adaptor]
Each device on a network needs an NIC (LAN adaptor) Most LANs make use of a network standard called Ethernet Every NIC has a unique number stored in its ROM MAC address allows node on the network to be identified. The NIC generates and receives suitable electrical signals. It can also carry out simple addressing by making use of MAC addresses
Cables Hubs Switches
LAN made with copper cable light and flexible which makes it easy to install. WAN made with fibre-optic cable transmits signals by using light waves. Fibre-optic cables can carry more signals for their size than copper cables and are cheaper too.
Hardware device that connect many network devices together (BT Hub) making them in a single network segment.
Switches connect network segments or bridges with other networks. A switch differs from a hub by transmitting a message only to the device intended instead of all connections
Wireless Access Points – Standard WIFI Routers
Access points - connected to router save money/effort nodes are wireless Introduce security risks encryption, hiding broadcast and MAC Addresses.
Router receives data form of packets and forwards them to their stop another router. Routers direct traffic through large networks, notably the internet or Small routers connect individual computers to the (ISP).
(c) Kasim Rashid
34
Types of network
Networks are organised in two principal ways.
Client-server network
Most common as one or more servers provide service to many client machines
Servers are computers - set up to handle network functions. Servers include:
- Database servers which store the corporate database/
- Game servicers – which provide online gaming access
- Web servers – which holds a website
Servers do not have to be separate – They can be a virtual server, where one
physical machine can take on multiple function. Backup main server
Peer to peer network
All computers are equal. No single provider is responsible for being the server.
Each computer stores files and acts as a server. (Bit torrent). Delete easily
Advantage
Easy to modify - many services that can
also be used by multiple users.
Security is more advanced – multiple
password profiles
Access and resources better - appropriate
permissions may enter
Disadvantages
Expensive start-up - you have to pay for the start-
up cost.
One down all done - server crashes all the
computers become unavailable.
Same thing – longer - When everyone does the
same thing, it takes
Advantage
Cheaper – as it’s all users that are needed
No Web Server - files can be shared
directly with users without web servers.
Disadvantages
Maintenance - is more difficult
Poor Security.
Slow – amount of multitasking
(c) Kasim Rashid
35
Network Topologies
Topology layout of the network components, the cabling and the node positions.
These are three principles layouts that you need to know about:
Bus Network
Attached to a single backbone.
A terminator is attached at each end to prevent
reflection of signals. Signals travel in either
directions.
In a bus network all the workstations, servers
and printers are joined to one cable (the bus).
Star Network
Connected to a central switch or hub than servers.
Signals travel in either directions.
Each device has its own cable that connects to a
switch or hub. A hub sends every packet of data to
every device, switch only sends a packet of data to
the destination device.
Ring Network
Data passes through each node, carried in data
units in one way, which prevents collisions.
Each device (workstation, server, and printer) is
connected to two other devices, like a ring.
Each packet of data travels in one direction and
each device receives each packet, until the
destination device receives it.
Disadvantages
If one fails than all fail – one breaks
down, all break down
Disadvantages
Expensive install – lots of cables
Extra hardware – hubs & switches
Hubs/switches must work – network fails
Advantage
Cheaper – as it’s all users that are
needed
Cheap to install – Not much cables
Disadvantages
Whole network down - main cable fails
Slow performance - data collisions every
workstation on the network
Data risk – “sees" all data on the network
Advantage
Reliable – if one cable or device fails
then all others will work
High performing - no data collisions
Advantage
Quick transfer – even if large no. of
devices – one direction
Mesh topology is a network where each computer and network device is interconnected with one another.
st transmissions to be distributed,
(c) Kasim Rashid
36
Network Technicalities
Protocols (TCP/IP)
Widely adopted Protocols TCP/IP (Transmission Control Protocol/Internet
Protocol). TCP/IP de facto standard for data transmission over the internet.
Hosts
Hosts are computer systems that accessed remotely and hold data or other
facilities such as web servers. TCP is concerned with the host connections.
It is not concerned with the nature of data being sent.
TCP/IP (transmission control protocol/internet protocol)
TCP/IP (also known as the internet protocol suite) is the set of protocols used over
the internet. It organises how data packets are communicated and makes sure
packets have the following information:
- source - which computer the message came from
- destination - where the message should go
- packet sequence - the order the message data should be re-assembled
- data - the data of the message
- error check - the check to see that the message has been sent correctly
Packets
Packets are collections of data forming part of a message. A packet is
constructed according to rules laid down by the appropriate protocol. A packet
contains a standard field such as:
- Protocol
- Checksum: number is checked to ensure packet has not been corrupted
- Total length
- Senders & Address
- Time to live – if not delivered it needs to be destroyed
- Packet number – This is used to reconstruct the message in the original order
- Data - the part of the message that is being constructed.
IP is concerned with the construction of the packets
Packet switching
Packets sent individually across a network. Packets may take different routes
according to availability and traffic conditions. They assembled from the complete
message at the receiving end. This process is called packet switching. It
improves the reliability if some route is down or congested, another can be found.
A
B
(c) Kasim Rashid
37
Protocol Meaning Application
DNS Domain Name System Translates domain names, such as
ocr.org.uk in to IP addresses
TSL/SSL Transport Layer security/Secure
socket layer
Designed for secure communication
Wi-Fi Wireless Internet Wi-Fi is a way of connecting to a computer network using radio waves instead of wires
FTP File transfer protocol From copying files from hosts
HTTP Hypertext transfer protocol For distributing hypermedia file as –
almost web pages
HTTPS Hypertext transfer protocol Secure
Secure version of HTTPS
IMAP Internet message access
protocol (Email protocol)
One method for accessing emails
POP3 Post office protocol (VER 3)
(Email protocol)
Another method for accessing emails,
used by most webmail servers
SMPT Simple Mail Transfer Protocol (Email protocol)
is another Internet standard for email transmission
IP Addressing
A letter sent through the post needs an address in order to be delivered
correctly. Similarly, a data packet in a network needs an address for delivery.
Each computer on a network has an IP address 32 binary numbers.
10000011 01101011 00010000 11001000
Each group of 8 bits is called an octet can store numbers ranging from 0 to 255.
The address is quoted in four groups. For example, 131.107.32.200.
IP addresses can be permanently allocated to a device (static addressing), but
they can also be temporally allocated (dynamic addressing), so computers will not
always have the same IP address.
MAC Addressing
MAC means Media Access Control. A MAC address is a unique number stored in
each NIC used to identify a device on a network.
A MAC address given six pairs of hexadecimal numbers e.g. 01:1F:33:69:BC:14.
(c) Kasim Rashid
38
Network Security
Data can be lost by unauthorised access - Data loss, Theft of data & malware
Data can be lost by accident – fires, malfunctions, wars, terrorism hazards.
Data should be copied to a secure facility off site.
Other forms of setting up security on a system include:
Authentication (User ID & Password)
Privileges rights assigned to users and groups – read, write, Execute
Encryption – Zipped files
Other ways to protect your systems and data include physical security, backing up
files and firewalls (a piece of software that monitors the network traffic and protects
from unauthorised access).
Forms of attack
Attacks on networks come in different forms:
Social Engineering - When a person is tricked into giving away
information that gives others access to the network. Examples include call
calling pretending to be of an authority figure to get details e.g. bank or
clicking an suspicious link in an email (phishing)
Active attack - when someone uses things like malware to compromise a
network's security and take control over its devices. This could include
releasing malware onto the network or cracking a password via a brute-force
attack. A DoS attack could be used to bring down servers by flooding them
with many requests in an effort to overload them. Firewalls can protect against
this.
Preventing vulnerabilities
Penetration testing - looks at vulnerabilities in a network's security by
attempting a controlled attack on the network.
Network policy - is a written company document that sets out the details
about how their network is to be setup and maintained.
User access levels - can give different users different levels of access
e.g. a teacher might use a USB drive on computer, but a student cannot.
Ethical hacking – Hackers are known to the user’s system and are brought in
to test how strong a system is by them hacking into it.
Protecting using software
There are lots of ways to protect a system form cyber-attacks. These include:
considerations at the design stage, audit trails, securing operating systems,
code reviews to remove code vulnerabilities in programming languages and
bad programming practices, modular testing, eavesdropping and effective
network security provision
(c) Kasim Rashid
39
The internet and World Wide Web
Broadband internet is maintained by ISP (Internet Service Providers) and transmitted
on physical wires that run underground/ocean. Most people use the internet to view
WWW web pages, emails & communication. Download speeds tend to be faster
than upload speeds more demand Network speeds
Can be measured in megabytes per second (MBps)
Hardware
To connect to the internet, some specialised hardware is needed.
Modem – phones are analogue. Computers are digital signals.
A modern converts between these signals and allows connections.
Router – connect networks together.
Digital Subscriber Line (DSL) routers are combined with a modem in order
to make use of unused bandwidth in telephone line, ADSL – Subscriber cable
Broadband connections
The speed that data can be transferred is dependent on a number of factors:
- Signal quality can vary between phone lines. - The distance between the modem and the telephone
Addressing
IP addressing are used to identify connected resources. (DNS) is a protocol that
connects IP Addresses (212.58.253.67) to user-friendly names (bbc.co.uk).
DNS servers maintain databases that match the names against the numbers.
A URL is a Uniform Resource Locator - a resource on the internet.
Internet domain names are split up like this: www.bbc.co.uk/computing/ipaddresses
- The domain name www.bbc.co.uk
- The path /computing
- The web page required - /ipaddresses
(c) Kasim Rashid
40
5. Emerging Trends, Issues & Impact
Environmental impact
Health
Technology can improve health by computers helping look at things like scanning
people or building systems that predict and help with health issues.
E.g. building a system to predict the spread of disease. AI can also diagnose
conditions faster than doctors.
Using technology can lead to bad health e.g. eye strain back problems etc.
Energy use, resources and recycling
Travel – Reduction of transporting goods (email)
Waste –contains toxic and plastic material long time to decompose.
Less Robots – Robots goods – efficient products
Consumes Energy – Computers use energy Run air-conditioning systems to cool computers. Methods include:
o Modern screen instead of CRT and Automatic standby
Ethical impact (morally breaking)
Technology can also help us socially connect with others, anywhere, through
technology like social media. Through this could become obsessive and may lead
to things like trolling and cyberbullying.
More people in the world have access to technology and the internet than other
people. This is called the digital divide. The digital divide can happen in the UK with
for instance some schools could be in remote areas and not have good connections
to internet.
Internet Censorship of countries could also exist due to political reasons.
It is also easy to track online activity such as Websites visited (violate privacy).
Legal Impact (law breaking)
These can include a wide variety of issues such as (intellectual property, patents,
licensing, open source and proprietary software & cyber-security)
Data Protection – Government laws - (deals with Cyberbullying and trolling)
Data Protection Act Computer Misuse Act Freedom of Information Act
Who can access personal data collected.
Protect against hacking and cybercrime.
Request information that is held by public bodies.
Cause Cybercrimes difficult to police as the internet crosses borders and law.
Creative Commons Producers to publish their work with licenses for other to use
Open Source Software Public domain. Improve their skills or for the public good. E.g. Linux, Open Office, Firefox,
Proprietary Software Software for profit. Only the complied code is realised. Users buy a licence to use it. E.g. ASC