Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

The efficient postcode


Published on

Published in: Technology, Business
  • Be the first to comment

  • Be the first to like this

The efficient postcode

  1. 1. The efficient postcodeA postmaster in Zejtun had to invent an efficient postcode in such a manner that hewould not waste any numbers and that any number could uniquely identify one housein his district.His district consisted of 3 locations: Zejtun, Ramla and Bir-id-deheb, Zejtun had 200houses, Ramla had 100 and Bir-id-deheb had another 100. Each house had 10 peopleliving in it.At the post-office he had a pigeonhole shelving for 400 addresses. How could he inventa code, such that each code would identify uniquely on residence, that from the numberthe postman could directly know which location it was for.So he gave the following addresses within each location:Zejtun: from 000 to 199; Ramla: from 00 to 99; Bir-id-deheb: from 00 to 99;Now he had to adapt the code so that each house in the district had a unique address, sohe adopted the following code:Zejtun: from 0 to 199; Ramla: from 200 to 299; Bir-id-deheb: from 300 to 399In this manner the postman knew that if the code started with 0 or 1 it was intended forZejtun, with 2 it was for Ramla and 3 it was for bir-id-deheb.So he organised his pigeonhole shelving as follows: ADDRESS LOCATION ADDRESS WITHIN LOCATION [000] [000] Zejtun ... [199] [199] [200] [00] Ramla ... [299] [99] [300] [00] Bir-id-deheb ... [399] [99]
  2. 2. However at Ramla, the houses were small and could host only 5 persons. So hecombined two houses together, with the same address, in such a way that each addresswould involve a whole family of 10 persons. ADDRESS LOCATION ADDRESS WITHIN LOCATION [000] [000] Zejtun ... [199] [199] [200] [00] [00] Ramla ... ... [299] [99] [99] [300] [00] Bir-id-deheb ... [399] [99]He then had the idea to organise a demonstration to the people in each village to explainthe working of the new code. So he organised a minibus service which would pick aparticular family from each location and bring them to the post office for ademonstration. What should be the capacity of this minibus? Obviously 10 since eachhousehold consisted of 10 persons. 10-BIT
  3. 3. Zejtun [000] 000 Zejtun sub post office Starting with 0 or 1 [199] 199 [200] Ramla Starting with 2 00 Ramla sub post office [299] 99Starting with 3 [300] Bir-id-Deheb 00 Bir-id-Deheb sub post office [399] 99
  4. 4. Modern times had this postmaster program an automatic selector to sort the mail toindividual sub-post offices in each location. 0 1 2 3 Full Address Zejtun A2 A2 A1 A1 A0 A0 Ramla A1 A0 Bir-id-deheb A1 A0For example an address of 223 would mean house number 23 at Ramla, an address of166 would mean house 166 in Zejtun and an address of 325 would mean house 25 inBir-id-deheb.
  5. 5. POSTMASTER GOT TRANSFEREDThe big success in the code he had invented, made him famous, and with fame came allthe envy of his colleagues which started inventing rumours which led the post mastergeneral to transfer him to Binland, a place where people could only count up to 1. In factthese people did all their mathematics in binary (base 2) and to avoid confusion, inspeaking, they adopted a Hexadecimal notation (base 16).In this land there were only two places, one called ROM and the other called RAM eachhad 256 locations and the Central Postal Unit could address all 512 locations in thisland. So he had to adopt the postcode system to this new land.Not being such a good mathematician, he had to get acquainted with binary numbers.To do this he adopted a table which gave him the number of digits required to have anumber of unique addresses: n = number of bits in address 2n = number of addressable locations 1 2 2 4 3 8 4 16 5 32 6 64 7 128 8 256 9 512 10 1024 ( called 1Kilo) 20 1024x1024 (called 1Mega) 30 1024x1024x1024 (called 1Giga) 40 1024x1024x1024x1024 (called 1Tera)From this table he deducted that to be able to address all the 512 locations in his land hehad to have an address which is 9 bits long and since each place had 256 locations, eachhad to have an address of 8 bits within the place.Since each location contained 8 bits as the inhabitants of Binland were called, the buscarrying the bits from each loction had to be 8 bit wide.Soon he realised that this was an even simpler case than he had before
  6. 6. ROM [000000000B] = [000H] [00000000B] = [00H]Starts with 0 [011111111B] = [0FFH] [11111111B] = [FFH] RAM [100000000B] = [100H] [00000000B] = [00H]Starts with 1 [111111111B] = [1FFH] [11111111B] = [FFH] The automatic machine he programmed was even Simpler: 0 ROM A7 A6 A5 A4 A3 A2 A1 A0 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 RAM A7 A6 A5 A4 A3 A2 A1 A0
  7. 7. Just as he had launched the new system, the postmaster general called him to announcethat a new place called I/O had been added to his district, and that he had to cater fortheir mail too.After a few minutes of rage, the postmaster couldn’t be bothered to redo everythingfrom scratch. So he decided to keep the I/O on a separate map and introduced a newsignal stamp called M/IO’ which indicated if the mail was addressed to the Main portionor the I/O section. Thus if this signal was 1 it would indicate that the address is referringto the Main and if it was 0 the address would be referring to I/O. M/IO’ 1 ROM 0 A7 A6 A5 A4 A3 A2 A1 A0 A8 A7 A6 A5 A4 A3 A2 A1 A0 1 1 A7 A6 A5 A4 A3 A2 A1 A0 RAM 0 A8 A7 A6 A5 A4 A3 A2 A1 A0 I/O M/IO’ A8...A0 Section A8...A0 M/IO’ A8...A0 Section A7...A0 0 [000H] [000H] 1 [000H] [00H] ... ROM ... [0FFH] [FFH] I/O [100H] [00H] RAM ... [1FFH] [1FFH] [1FFH] [FFH]
  8. 8. This solution could accomodate an extra 512 locations in I/O. Yet being on a separatemap, locations in I/O felt a bit Isolated. Also this added extra complexity to the machinewhich consequently made mail distribution slower. The postmaster also noticed that512 addresses for I/O were superfluous and that actually there were only 256addresses needed for this place. A9...A0 Section A7...A0So one fine day he decided it would be 000H] [00H]better to map everything together on a ROM ...single map. He noticed that to do this the [0FFH] [FFH]address would need another bit since now [100H] [00H]the locations had become 768 locations. RAM ...With the 10th bit in the address added, he [1FFH] [FFH]would be able to address 1024 locations [200H] [00H] I/O ...which would leave 256 locations for further [2FFH] [FFH]expansion. [300H] [00H]So he redrew the map from scratch. Expansion [3FFH] [FFH] CPU ROM A9 A7 A6 A5 A4 A3 A2 A1 A0 A8 I/O A7 A7 A6 A6 A5 A5 A4 A4 A3 A3 A2 A2 A1 A1 A0 A0 A7 A6 A5 A4 A3 A2 A1 A0 0 00 RAM 01 1 10 2 11 3
  9. 9. The Sorting Machine – also called Address Decoder