Solutions are shown below in italics.
Well, 12-bit address means 2**12 memory cells * 12 bits per memory cell * 1 byte per 8 bits = 3 * 2**11 bytes * 1 Kbyte per 1024 bytes = 6 Kbytes.
A 24-bit address means 2**24 memory cells * 12 bits per memory cell * 1 byte per 8 bits = 3 * 2**23 bytes * 1 Kbyte per 1024 bytes * 1 Mbyte per 1024 Kbytes = 24 Mbytes.
A 36-bit address means 2**36 memory cells * 12 bits per memory cell * 1 byte per 8 bits = 3 * 2**35 bytes * 1 Kbyte per 1024 bytes * 1 Mbyte per 1024 Kbytes * 1 Gbyte per 1024 Mbytes = 96 Gbytes.
That would be 2**12 = 4096 possible character codes.
Well, 320 cylinders * 7 tracks per cylinder * 31 sectors per track * 512 bytes per sector = 3555328 bytes * 1 Kbyte per 1024 bytes * 1 Mbyte per 1024 Kbytes = 33.9 Mbytes, a fairly small drive.
There would be up to 100 msec for the heads to position to the correct cylinder, and then up to one rotation for the first sector to come by. The next 7 rotations (one per track) would be required to read the data for the entire cylinder. Now, notice that at 3600 revolutions per minute, there are 60 revolutions per second, or 16.67 msec per revolution. This is plenty of time for the 3 msec between adjacent cylinder seek time. So, the time required to seek/wait for the first sector is one revolution, and this must be done for all 320 cylinders. So we get 100 msec * 1 second per 1000 msec + 320 cylinders * (1 + 7) revolutions per cylinder * 1 second per 60 revolutions = 42.77 seconds.
0000011110001111 0001011010011110 0010010110101101 0011010010111100
First, we compute the distance for all pairs of codes.
0000011110001111
4
0001011010011110 4
8 8
0010010110101101 4
4
0011010010111100
The distance of the code is the minimum disctance, in this case, 4.
With this code it is possible to detect 3-bit errors, but one can
only correct 1-bit errors.
0 = 60 base 8 = 00110000 base 2 = 100001100000
1 = 71 base 8 = 00111001 base 2 = 000101101001
A = 101 base 8 = 01000001 base 2 = 100010010001
Z = 132 base 8 = 01011010 base 2 = 000010101010
a = 141 base 8 = 01100001 base 2 = 110111010001
z = 172 base 8 = 01111010 base 2 = 010111101010
With synchronous communication, 8 bits per byte are transmitted. Also, 56 Kbits per second means 56000 bits per second, NOT 56 * 1024 bits per second. So, 8 Mbytes * 1024 Kbytes per Mbyte * 1024 bytes per Kbyte * 1 second per 56000 bits * 8 bits per byte = 1198.37 seconds = 19:58.37, or about 20 minutes, at least.
With asynchronous communication at 19.2 Kbits per second, 10 bits per byte are transmitted, and 19.2 Kbits per second means 19200 bits per second, NOT 19.2 * 1024 bits per second. So, 8 Mbytes * 1024 Kbytes per Mbyte * 1024 bytes per Kbyte * 1 second per 19200 bits * 10 bits per byte = 4369.07 seconds = 1:12:49.07, or about 1 hour 15 minutes, at least.
With asynchronous communicatio at 110 bits per second, 11 bits per byte are transmitted. So, 8 Mbytes * 1024 Kbytes per Mbyte * 1024 bytes per Kbyte * 1 second per 110 bits * 11 bits per byte = 838860.8 seconds = 9 17:01:00.8, or about 1 day 17 hours, at least.
Copyright © 1997,
Ray Ontko
(rayo@ontko.com).
If you're curious about why I copyright, see
Peter Suber's
Why
Copyright Web Documents?.