Everything stored on a computer can be represented as a string of bits. However, different types of data (for example, characters and numbers) may be represented by the same string of bits. For this question, we assume that text characters (or symbols) are stored in 8 bit ASCII code and that numbers are stored in 12 bits. We also assume that when the number is stored as a floating point (real) number, 6 of these bits are reserved for the mantissa (or significand) with 2k-1 as the exponent bias (where k is the number of bits for the characteristic).
For example, the string of bits 001101100011100100110101 might represent the three characters in 695 or two numbers, which will be different depending on whether the numbers are stored as integers (867 and -1739 here) or as floating point numbers (0.13671875 and -0.00040435791015625 here). More precisely, any real number between 0.13671875 and 0.140625 will have the same floating point representation in this, not very accurate, scheme. Similarly, any real number between -0.00040435791015625 and -0.0004119873046875 will also have the same computer representation.
(a) Find the computer representation for the negative integer -2011
(b) Find the computer representation for the negative floating point number -2011
(c) In storing the floating point number -2011 (part (b) above) the mantissa has been truncated hence the number stored is not exactly -2011. What is the actual number stored?
(d) Find the 8 bit ASCII code for the five characters -2011
The five questions (e)-(i) below refer to the string of bits
010011110110000101110100
(e) Represent this bit string as a hexadecimal number.
(f) In 8 bit ASCII code, what characters does this string represent?
(g) If the string represents a pair of integers, what are these two integers?
(h) If the string represents a pair of floating point numbers, what are these two (smallest) numbers?
(i) Give the ranges of other real numbers that could be represented by the same string.