revision lecture intro to it cosc1078 introduction to information technology extra lecture review...
TRANSCRIPT
Revision Lecture Intro to IT
COSC1078 Introduction to Information Technology
Extra Lecture
ReviewJames Harland
Revision Lecture Intro to IT
Introduction to IT
1 Introduction
2 Images
3 Audio
4 Video
5 Binary Representation WebTest 1, Assignment 1
6 Data Storage
7 Review/Machine Processing
8 Operating Systems WebLearn Test 1
9 Processes Assignment 2
10 Internet & Survey
11 Internet Security WebLearn Test 3
12 Future of IT Assignment 3, Peer and Self Assessment
Revision Lecture Intro to IT
Overview
Questions?
Mock Exam
Requested topics
Questions?
Revision Lecture Intro to IT
Intro to IT Schedule
Week Lecture 1 Lecture 2
12 Future of IT Future of IT
13 Tuesday 19th October
10.30-11.30
12.10.02
Review
Thursday 21st October
1.00-3.30
10.08.03
Mock Exam
Revision Lecture Intro to IT
Mock Exam
1.00-3.30 on Thursday 21st October in 10.08.03 Bring your own paper, pens, etc. Calculators and translation dictionaries allowed Answers will be available from me when you leave
Schedule:
1.00 Access to room 1.15 Reading time commences 1.30 Writing time commences 3.30 Exam concludes
Revision Lecture Intro to IT
Review Topics
Logic gates Hexadecimal to/from binary conversions Process vs. program Floating point Network layers Encryption Internet architecture Machine cycle
Revision Lecture Intro to IT
Hexadecimal
01010100001010101010100110100010101001101001010010100011100010101010100101111001001010…
AF136DF738CA23895389BCFE5C36A63B…
Revision Lecture Intro to IT
Hexadecimal
Notation for binary numbers More compact than 1001010001010101001010... NOT decimal (0-9) Base 16: 9 + 9 = 1 x 16 + 2 x120 0000 4 0100 8 1000 C 11001 0001 5 0101 9 1001 D 11012 0010 6 0110 A 1010 E 11103 0011 7 0111 B 1011 F 1111
Revision Lecture Intro to IT
Excess Notation
Bit pattern Value
111 3
110 2
101 1
100 0
011 -1
010 -2
001 -3
000 -4
A different encoding of the numbers “naive” bit pattern encodes 4 more than actual value
100 (looks like 4) encodes 0101 (looks like 5) encodes 1110 (looks like 6) encodes 2
Revision Lecture Intro to IT
Floating Point
sign bitMantissa
exponent
1 bit for sign3 bits for exponent4 bits for mantissa100.101
Revision Lecture Intro to IT
Floating Point
01111001: +ve 0.1001 shifted 111 (+3) places = 100.110011110: –ve 0.1110 shifted 001 (-3) places = -0.0001110
Mantissa: digit sequence (1st digit always 1)
Exponent: where to put the . This is generally given in ‘excess’ notation
Binary form of -2.423 x 104
Revision Lecture Intro to IT
Gates and circuits
or
and
not1
0
00
0
0
0
0
0
1
11
1
11
1
Revision Lecture Intro to IT
Gates and circuits
No storage here
Results instantaneously available
Disappear when inputs change
How can a bit be `stored’?
Revision Lecture Intro to IT
Memory via `Flip flops’
or
and
not1
00
0 0 0
0
0
1
Revision Lecture Intro to IT
Memory via `Flip flops’
or
and
not0
11
1 1 1
1
0
Revision Lecture Intro to IT
Memory via `Flip flops’
Can design other versions of flip-flops
Shows how circuits can be designed using AND, OR, NOT (NAND, NOR, XOR, …) in combinations (gates)
Hierarchy and abstraction
Shows how electric circuits can store values
Revision Lecture Intro to IT
Fetch Decode Execute
FETCH
EXECUTE DECODE
Machinecycle
Revision Lecture Intro to IT
Two special registers
Instruction register: holds current instructionProgram counter: address of next instruction
Fetch: Put instruction specified by program counter into instruction registerIncrement program counter by two
Decode: Work out what to do
Execute: Perform the instruction
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A0Address Contents
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A0FETCH
156C
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A2FETCH
156C
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A2DECODE
156C
6C 2B
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A2
EXEC
156C
6C 2B
2B5
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A2 FETCH
166D
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A4 FETCH
166D
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A4 DECODE
166D
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A4 EXEC
166D
6D FF
FF6
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
A6 FETCH
5056
Revision Lecture Intro to IT
Processing
A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00
Program Counter
InstructionRegister
…
Revision Lecture Intro to IT
Processing
Program Counter
InstructionRegister
EXEC
B258
B4
Revision Lecture Intro to IT
Processing
Program Counter
InstructionRegister
EXEC
B258
58
Revision Lecture Intro to IT
Processing
Jump instructions change program counter
Can load any memory address into program counter (!!!)
Often use pipelining for efficiency Fetch next instruction while executing Processor doesn’t wait for fetch to complete
Can do more than one instruction …
Lecture 24: Review Intro to IT
Processes
Revision Lecture Intro to IT
Processes
A program is a static set of instructions
A processes is the execution of a program, which changes state over time.
Revision Lecture Intro to IT
Processes Executing in Context
Program Counter
InstructionRegister
CC ROM
RAM
Processor Memory Disk
00
CC
Revision Lecture Intro to IT
Processes Executing in Context
Program Counter
InstructionRegister
DD ROM
RAM
Processor Memory Disk
00
CC
DD
Lecture 19: Internet: Images Intro to IT
InternetLisa?Hi Dad!
Listen!Lisa?Hi Dad! Listen!
Revision Lecture Intro to IT
Internet Structure
Application Application
Transport Transport
Network
Link
Network
Link
Mordor sucks!
2 dor1 Mor3 suc 4 ks!
1 2 3 49 5 6 2
14
3
22
1
3
4
2 3 1 49 5 6 2
2 dor1 Mor3 suc 4 ks!
Mordor sucks!
Revision Lecture Intro to IT
Internet Structure
1 Mor
1
6
6
Revision Lecture Intro to IT
Network Layer (Internet Protocol) Real intelligence is in the network layer
Adds next destination to packet
Not complete list of addresses
Sends to next destination
Retrieves final destination packets for this node
Passes them to the transport layer
Routing tables can be updated when disconnections occur
Hop counts used to stop endless looping
Revision Lecture Intro to IT
Transport layer
Transmission Control Protocol (TCP) often used
User Datagram Protocol (UDP) becoming more common
TCP
Establishes connection first
Send and wait for acknowledgement
Reliable
Can adjust flow control to avoid congestion
Often best for email (which is not real-time)
Older
Revision Lecture Intro to IT
Transport layer
UDP
Doesn’t establish connection
Just sends and forget
Efficient
No congestion adjustment
Works well for DNS lookup
Often used for Voice over Internet Protocol (VoIP) applications such as Skype
Revision Lecture Intro to IT
Transmitting secrets
Question: How do you share a secret with someone you have never met?
Revision Lecture Intro to IT
Encryption
“new password is bumblebee”
“new password is bumblebee”
Send
Decrypt
Encrypt
Revision Lecture Intro to IT
Public Key Systems
Alice needs to know Bob's encryption key
Alice needs to know Charlie's encryption key
Alice needs to know David's encryption key ...
Alice needs to know everyone's encryption key
All encryption keys are made public
All decryption keys are kept private
Conclusion
Come to the mock exam