Test 2 Study Guide
Total Page:16
File Type:pdf, Size:1020Kb
Test 2 Study Guide CS 200 • Spring 2015 Study Topics Number Base Conversion o Other Bases to Decimal (ex. Base 5 to Base 10) o Base 10 to Binary, Hexadecimal, and Octal o Binary to Octal and Hexadecimal o Octal to Hex using Binary intermediate o Radix point and Fractional conversion (focus on Binary) Data Representation o Integers . Unsigned . Sign-Magnitude . 1s Complement . 2s Complement o Floating Point . Exponent with Bias . Significand with implied “1.” . IEEE Single (32 bits) and Double (64 bits) precision o Floating Point Math . Addition./Subtraction . Normalize smaller exponent to match larger . Use sign bit to decide sign of result and add or subtract significand . Normalize again (if necessary) to store in IEEE format . Multiplication/Division . Use sign to decide sign of result . Add (for multiply) or subtract (for divide) exponents . Multiply or divide significands . Normalize (if necessary) to store in IEEE format o Character Representation . BCD: Early IBM 6-bit format . EBCDIC: BDC extended to 8 bits . ASCII: Binary code for analog devices (telephone, telegraph) . Originally 7 bits extended to 8 bits . Unicode: 16-bit format designed to hold international character sets o Error Detection . Modulo 2 division . CRC Syndrome from Data . Use prime binary divisor . Add digits (0s) to data – one less than digits in divisor . Modulo 2 division – remainder replaces 0s added to data
. CRC detection . Modulo 2 division using original prime binary divisor . If remainder 0, remove syndrome digits to get data . If remainder not 0, data is suspect – ask for retransmit o Hamming Code . Can detect AND correct errors . Parity: count the 1s in a binary string . Even Parity: if the 1s are odd, parity bit = 1, otherwise 0 . Odd Parity: if the 1s are odd, parity bit = 0, otherwise 1 . 8 data bits + 4 parity bits = 12-bit codeword. . Create Codeword . Number bits from 1 starting at right . Parity bits are at powers of 2 positions . Other positions are combinations of powers of 2 . Add up all the positions that use a power to get the parity bit Ex: Data = 10110111 1 0 1 1 0 1 1 1 12 11 10 9 8 7 6 5 4 3 2 1 1 1 1 1 1 2 2 2 2 2 = 1 4 4 4 4 8 8 8 8 The positions that contribute to parity bit 2 are in red and add up to an odd number so the (even) parity is 1 and would go in position 2. . Decode Codeword . Test parity bits as above, mark as correct or incorrect . If all parity bits are correct or only one is incorrect, data is good. . If more than one parity bit is incorrect, add positions to find bad bit Ex: Bits 4, 2, and 1 are incorrect so position 7 is the bad bit. (4 + 2 + 1 = 7) . If outside of possible positions, data cannot be corrected . Otherwise, simply flip the bad bit to fix it. . If data is correct, strip out the parity bits to get the original data.