COSC1078 Introduction to Information Technology Lecture 10 Binary Representation James Harland james.harland@rmit.edu.au Lecture 10: Binary Representation Intro to IT Introduction Who is this bloke? Lecture 10: Binary Representation Intro to IT Introduction Lecture 10: Binary Representation Intro to IT Overview Questions? WebLearn Test 1 Assignment 1 Binary Representation Questions? Lecture 10: Binary Representation Intro to IT Introduction to IT 1 Introduction 2 Images 3 Audio 4 Video WebLearnTest 1 5 Binary Representation Assignment 1 6 Data Storage 7 Machine Processing 8 Operating Systems WebLearn Test 1 9 Processes Assignment 2 10 Internet 11 Internet Security WebLearn Test 3 12 Future of IT Assignment 3, Peer and Self Assessment Lecture 10: Binary Representation Intro to IT Questions? How did you spend 6-8 hours on this course last week? This week? Lecture 10: Binary Representation SE Fundamentals Assessment Process Submit all assignments via Blackboard in the Learning Hub Assignment 1 due 11.59pm Sunday 1st April Assignment 2 due 11.59pm Sunday 6th May Assignment 3 due 11.59pm Sunday 27th May Late assignments attract a penalty of 10% per day late, up to a maximum of 50% Lecture 910: Binary Representation Intro to IT Assignment Assignment will be in three parts Overall task is to produce a video Groups of up to 3 Assessed by final video and group blog Part 1: images and audio (end of week 5) Part2: hardware (end of week 9) Part 3: reflection, research (end of week 12) Lecture 10: Binary Representation Intro to IT Assignment 1 Use GIMP (or a similar tool) to perform some manipulations on an image Use Audacity to perform some manipulations on sound Use a movie making tool to produce something like (and much better than!) ‘Lord of the Controllers 1 & 2’ Email me your group and its name so that I can set up a blog on the Learning Hub Lecture 910: Binary Representation Intro to IT Overview 01010100001010101010100110100010101001101001010010 100011100010101010100101111001001010… Lecture 10: Binary Representation Intro to IT History … Babbage’s Difference Engine (1849) Babbage’s Analytical Engine (1837-1871, never built) Turing’s Universal Machine (1936, mathematical model) Turing digital Boolean-logic multiplier (1937) Colossus (1943, destroyed 1945) ENIAC (1946) Von Neumann architecture (c. 1945) EDVAC (1949) CSIRAC (1949) Lecture 10: Binary Representation Intro to IT Computer Memory Cells of 8 bits each (one byte) … Most significant bit address Lecture 10: Binary Representation … Least significant bit Intro to IT Random Access Memory (RAM) Random access means any cell can be accessed at any time (and in any order) Volatile – contents cleared when machine is switched off Very fast compared to other forms of memory DRAM: dynamic RAM (replenishes charges constantly) SDRAM: synchronous DRAM – faster still Often have small very fast caches and registers Lecture 10: Binary Representation Intro to IT Magnetic Disk Thin spinning metal disk with magnetic coating Each disk contains a number of circular tracks Often several disks stacked on top of each other Cylinders made up of tracks made up of sectors Can have very large storage this way Slow access time! Lecture 9: Data Storage Devices Intro to IT Magnetic Disk (Hard Disk) Seek time: move heads from one track to another Latency time: half time for complete disk rotation Access time: seek time + latency time Transfer rate: rate data can be read from disk `Typical’ Hard disk Seek time: 2ms to 15ms Latency time: 8ms to 20ms Transfer rate: 0.5 GB per second Sounds fast, but is actually quite slow … Lecture 9: Data Storage Devices Intro to IT Optical Disks (CDs, DVDs) Laser readers rather than magnetic ones Disks more error-tolerant than magnetic ones Type Features Date Storage CD “compact disk” 1984 800MB DVD Multiple layers 1995 15GB Blu-ray `blue laser’ 2004 100GB (405 vs 650 nm) Lecture 9: Data Storage Devices Intro to IT Flash Drives Disks of all sorts are slow compared to other circuits Flash drives ‘write’ small electronic circuits Eventually decay after many changes of data Suitable for slow-changing data, not main memory Portable and much more resilient than disks Lecture 9: Data Storage Devices Intro to IT Older Storage Types Magnetic tape `Floppy’ disk (5.25’’ disk) 3.5’’ disk Lecture 9: Data Storage Devices Intro to IT Binary Codes “Meet me at Fred’s” 234 12.43434343 -620 0 Lecture 10: Binary Representation 1 1 0 0 Intro to IT 1 1 0 ASCII American Standard Code for Information Interchange 7-bit patterns to represent letters (upper and lower case) numbers ,.,;“$%@*&!?<>… Total of 128 different characters Lecture 10: Binary Representation Intro to IT ASCII 01001000 01100101 01101100 01101100 01101111 00101110 H e l l o . Hello! Unicode: uses 16 bits, can do Chinese, Japanese & Hebrew characters Lecture 10: Binary Representation Intro to IT Numbers Represented in binary notation 25 in ASCII is 00110010 00110101 8 bits per digit seems too much! Can represent 256 different numbers in 8 bits … Don’t want to add, multiply etc. in ASCII … Remember that 1 + 1 = 10 … Lecture 10: Binary Representation Intro to IT Two’s Complement Bit pattern Value 011 3 010 2 001 1 000 0 111 -1 110 -2 101 -3 100 -4 Lecture 10: Binary Representation How do you store negative numbers? Intro to IT Two’s Complement 0 first means +ve (sign bit) 1 first means –ve +ve: Count from 0 up to 01n-1 -ve: Start from 1n down to 3 is 011, -3 is 101 2 is 010, -2 is 110 1 is 001, -1 is 111 Lecture 10: Binary Representation 10n-1 Bit pattern Value 011 3 010 2 001 1 000 0 111 -1 110 -2 101 -3 100 -4 Intro to IT Two’s Complement Bit pattern Value 011 3 010 2 011 + 111 = 1010 001 1 Answer is 010, ie 2. 000 0 111 -1 110 -2 101 -3 100 -4 1 + 2: add in obvious way 3 – 1: calculate as 3 + (-1) Can add and subtract with the same circuits Lecture 10: Binary Representation Intro to IT Excess Notation A different encoding of the numbers “naive” bit pattern encodes 4 more than actual value 100 (looks like 4) encodes 0 101 (looks like 5) encodes 1 110 (looks like 6) encodes 2 Lecture 10: Binary Representation Bit pattern Value 111 3 110 2 101 1 100 0 011 -1 010 -2 001 -3 000 -4 Intro to IT Floating Point exponent sign bit Mantissa 100.101 1 bit for sign 3 bits for exponent 4 bits for mantissa Lecture 10: Binary Representation Intro to IT Floating Point 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 01011001 means +ve 0.1001 shifted 101 place = 1.001 Lecture 10: Binary Representation Intro to IT Truncation Errors Beware adding small numbers to large ones! Finite length of encoding means that sometimes digits are lost Not often a problem, but can be … Lecture 10: Binary Representation Intro to IT Parity Bits Add a ‘parity bit’ to each byte Odd parity: make total of 1s in all 9 bits odd Even parity: make total of 1s in all 9 bits even If parity is wrong, then an error has occurred Lecture 10: Binary Representation Intro to IT Conclusion Get Assignment and WebTest done this week Do online quizzes later this week Keep reading! (book particularly) Lecture 10: Binary Representation Intro to IT