revision lecture intro to it cosc1078 introduction to information technology extra lecture review...

47
Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland [email protected]

Upload: edgar-holmes

Post on 04-Jan-2016

222 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

COSC1078 Introduction to Information Technology

Extra Lecture

ReviewJames Harland

[email protected]

Page 2: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 3: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Overview

Questions?

Mock Exam

Requested topics

Questions?

Page 4: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 5: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 6: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 7: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Hexadecimal

01010100001010101010100110100010101001101001010010100011100010101010100101111001001010…

AF136DF738CA23895389BCFE5C36A63B…

Page 8: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 9: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 10: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Floating Point

sign bitMantissa

exponent

1 bit for sign3 bits for exponent4 bits for mantissa100.101

Page 11: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 12: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Gates and circuits

or

and

not1

0

00

0

0

0

0

0

1

11

1

11

1

Page 13: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Gates and circuits

No storage here

Results instantaneously available

Disappear when inputs change

How can a bit be `stored’?

Page 14: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Memory via `Flip flops’

or

and

not1

00

0 0 0

0

0

1

Page 15: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Memory via `Flip flops’

or

and

not0

11

1 1 1

1

0

Page 16: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 17: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Fetch Decode Execute

FETCH

EXECUTE DECODE

Machinecycle

Page 18: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 19: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A0Address Contents

Page 20: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A0FETCH

156C

Page 21: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A2FETCH

156C

Page 22: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A2DECODE

156C

6C 2B

Page 23: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 24: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A2 FETCH

166D

Page 25: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A4 FETCH

166D

Page 26: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A4 DECODE

166D

Page 27: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 28: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

A6 FETCH

5056

Page 29: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

A0 15A1 6CA2 16A3 6DA4 50A5 56A6 30A7 C0A8 C0A9 00

Program Counter

InstructionRegister

Page 30: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

Program Counter

InstructionRegister

EXEC

B258

B4

Page 31: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processing

Program Counter

InstructionRegister

EXEC

B258

58

Page 32: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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 …

Page 33: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Lecture 24: Review Intro to IT

Processes

Page 34: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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.

Page 35: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processes Executing in Context

Program Counter

InstructionRegister

CC ROM

RAM

Processor Memory Disk

00

CC

Page 36: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Processes Executing in Context

Program Counter

InstructionRegister

DD ROM

RAM

Processor Memory Disk

00

CC

DD

Page 37: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Lecture 19: Internet: Images Intro to IT

InternetLisa?Hi Dad!

Listen!Lisa?Hi Dad! Listen!

Page 38: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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!

Page 39: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Internet Structure

1 Mor

1

6

6

Page 40: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 41: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au
Page 42: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 43: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 44: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Transmitting secrets

Question: How do you share a secret with someone you have never met?

Page 45: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Revision Lecture Intro to IT

Encryption

“new password is bumblebee”

“new password is bumblebee”

Send

Decrypt

Encrypt

Page 46: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

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

Page 47: Revision Lecture Intro to IT COSC1078 Introduction to Information Technology Extra Lecture Review James Harland james.harland@rmit.edu.au

Conclusion

Come to the mock exam