Presentation is loading. Please wait.

Presentation is loading. Please wait.

1 A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN 0-13-046709-X Chapter 12 Data Representation.

Similar presentations


Presentation on theme: "1 A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN 0-13-046709-X Chapter 12 Data Representation."— Presentation transcript:

1 1 A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN 0-13-046709-X Chapter 12 Data Representation

2 2 Analog vs. Digital there are two ways data can be stored electronically 1. analog signals represent data in a way that is analogous to real life signals can vary continuously across an infinite range of values e.g., frequencies on an old-fashioned radio with a dial 2. digital signals utilize only a finite set of values e.g., frequencies on a modern radio with digital display) the major tradeoff between analog and digital is variability vs. reproducibility analog allows for a (potentially) infinite number of unique signals, but they are harder to reproduce  good for storing data that is highly variable but does not need to be reproduced exactly digital signals limit the number of representable signals, but they are easily remembered and reproduced  good for storing data when reproducibility is paramount

3 3 Binary Numbers modern computers save and manipulate data as discrete (digital) values the most effective systems use two distinct binary states for data representation in essence, all data is stored as binary numbers in the binary number system, all values are represented using only the two binary digits 0 and 1, which are called bits binary representation converting binary to decimal

4 4 Decimal  Binary algorithm for converting from decimal (D) to binary (B):

5 8-5 The 16 Hex Digits 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F A = 10, B = 11,..., F = 15 Sixteen values can be represented perfectly by 4-bit sequences (2 4 = 16) Changing hex digits to bits and back again: Given a sequence of bits, group them in 4's and write the corresponding hex digit  0101 1100 5 C Given hex, write the associated group of 4 bits

6 8-6 Hex (0-9,A-F) Decimal HexBinary 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0100 7 7 0111 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111

7 7 Representing Integers when an integer value must be saved on a computer, its binary equivalent can be encoded as a bit pattern and stored digitally usually, a fixed size (e.g., 32 bits) is used for each integer so that the computer knows where one integer ends and another begins the initial bit in each pattern acts as the sign bit (0=positive, 1=negative) negative numbers are represented in two’s complement notation  the "largest" bit pattern corresponds to the smallest absolute value (-1)

8 8 Representing Real Numbers a real number can be uniquely identified by the two components of its scientific notation (fractional part and the exponent) 123.45 = 12345 x 10 -2.000042 = 42 x 10 6 thus, any real number can be stored as a pair of integers real numbers stored in this format are known as floating point numbers, since the decimal point moves (floats) to normalize the fraction standard formats exist for storing real numbers, using either 32 bits (single precision) or 64 bits (double precision) most programming languages represent integers and reals differently JavaScript simplifies things by using IEEE double-precision floating point for all numbers

9 9 Representing Characters characters have no natural correspondence to binary numbers computer scientists devised an arbitrary system for representing characters as bit patterns ASCII (American Standard Code for Information Interchange)  maps each character to a specific 8-bit pattern  note that all digits are contiguous, as are all lower-case and all upper- case letters '0' < '1' < … < '9' 'A' < 'B' < … < 'Z' 'a' < 'b' < … < 'z'

10 10 Representing Text strings can be represented as sequences of ASCII codes, one for each character in the string specific programs may store additional information along with the ASCII codes e.g. programming languages will often store the number of characters along with the ASCII codes e.g., word processing programs will insert special character symbols to denote formatting (analogous to HTML tags in a Web page)

11 11 Representing Text The size of a file = number of bytes stored in the file. For plain ASCII text files, the size of the file = number of characters. Word processing documents are larger because of the extra formatting information that is part of the file. 1KB (kilobyte) = 2 10 bytes = 1024 bytes (a file of 20 lines of text, about 100 chars per line, would be about 2 KB) 1MB (megabyte) = 2 20 bytes = 1024KB (about 1,000 pages of text, each page 20 lines of 100 chars, would be about 2MB) 1GB (gigabyte) = 2 30 bytes = 1024MB 1TB (terabyte) = 2 40 bytes = 1024GB Speed of Data Transmission: Data are transmitted at speeds measured in bps (bits per second). Typical Speeds: Modem - 33.6Kbps, 56Kbps ISDN - 64Kbps, DSL - 768Kbps – 3Mbs Cable Modem - > 3Mbs

12 8-12 The 16 Hex Digits 0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F A = 10, B = 11,..., F = 15 Sixteen values can be represented perfectly by 4-bit sequences (2 4 = 16) Changing hex digits to bits and back again: Given a sequence of bits, group them in 4's and write the corresponding hex digit  0101 1100 5 C

13 8-13 Hex (0-9,A-F) Decimal HexBinary 0 0 0000 1 1 0001 2 2 0010 3 3 0011 4 4 0100 5 5 0101 6 6 0110 7 7 0111 8 8 1000 9 9 1001 10 A 1010 11 B 1011 12 C 1100 13 D 1101 14 E 1110 15 F 1111

14 Binary - HEX – Binary Example: (0100001010100101011011110001) 2 = (?) 16 0100 0010 1010 0101 0110 1111 0001 = (4 2 A 5 6 F 1) 16 Example: (AF52C) 16 = (?) 2 A F 5 2 C = (1010 1111 0101 0010 1100) 2 14

15 11-15 Digitizing Sound An object creates sound by vibrating in a medium such as air Vibrations push the air Pressure waves emanate from the object and vibrate our eardrums The force, or intensity of the push determines the volume The frequency (number of waves per second) is the pitch

16 11-16 Analog Sound

17 11-17 Sampling Take measurements at regular intervals Number of samples in a second is the sampling rate The faster the rate, the more accurate the recording

18 18 Representing Sounds computers are capable of representing much more than numbers and text complex data requires additional techniques and algorithms EXAMPLE: representing sounds sounds are inherently analog signals with a specific amplitudes and frequencies when sound waves reach your ear, they cause your eardrum to vibrate, and your brain interprets the vibration as sound e.g. telephones translate a waveform into electrical signals, which are then sent over a wire and converted back to sound e.g. phonographs interpret waveforms stored on on grooves of a disk (similar to audio cassettes) analog signals cannot be reproduced exactly, but this is not usually a problem since the human ear is unlikely to notice small inconsistencies

19 19 Representing Sounds (cont.) when analog recordings are repeatedly duplicated, small errors that were originally unnoticed begin to propagate digital recordings can be reproduced exactly without any deterioration in sound quality  analog waveforms must be converted to a sequence of discrete values  digital sampling is the process in which the amplitude of a wave is measured at regular intervals, and stored as discrete measurements  frequent measurements must be taken to ensure high quality  this results in massive amounts of storage  techniques are used to compress the data and reduce file sizes (e.g., MP3, WAV)

20 11-20 Analog –Digital - Analog

21 11-21 How Many Bits per Sample? How accurate must the samples be? Bits must represent both positive and negative values The more bits, the more accurate the measurement The digital representation of audio CDs uses 16 bits (records 65,536 levels, half above and half below the zero line)

22 11-22 Digitizing Sound

23 11-23 Advantages of Digital Sound We can compute the representation MP3 Compression One computation is to compress the digital audio (reduce number of bits needed) Remove waves that are outside range of human hearing MP3 usually gets a compression rate of 10:1  Lower bandwidth requirements, popular for Internet transmission Reproducing the Sound Recording Bit file can be copied without losing any information Original and copy are exactly the same

24 24 Representing Images EXAMPLE: representing images images are stored using a variety of formats and compression techniques the simplest representation is a bitmap bitmaps partition an image into a grid of spots, called pixels, and then convert each pixel into a bit pattern resolution refers to the sharpness or clarity of an image bitmaps that are divided into smaller pixels will yield higher resolution images the left image is stored using 96 pixels per square inch, and the right image is stored using 48 pixels per square inch  the left image appears sharp, but has twice the storage requirements

25 25 Representing Images (cont.) when creating a bitmap of a color image, more than one bit is required to represent each pixel the most common system is to translate each pixel into a 24 bit code, known as its RGB value: 8 bits to represent the intensity of each red/green/blue component common image formats implement various compression techniques to reduce storage size GIF (Graphics Interchange Format)  a lossless format, meaning no information is lost in the compression  commonly used for precise pictures, such as line drawings JPEG (Joint Photographic Experts Group)  a lossy format, so the compression is not fully reversible (but more efficient)  commonly used for photographs

26 26 Distinguishing Data Types how does a computer know what type of value is stored in a particular piece of memory? short answer: it doesn't when a program stores data in memory, it must store additional information as to what type of data the bit pattern represents thus, the same bit pattern might represent different values in different contexts

27 11-27 Distinguishing Data Types


Download ppt "1 A Balanced Introduction to Computer Science David Reed, Creighton University ©2005 Pearson Prentice Hall ISBN 0-13-046709-X Chapter 12 Data Representation."

Similar presentations


Ads by Google