...sine propero notiones

You are here: Kiko > EmbeddedSystems > BcdClock > TheBinaryClockInHMSMode Printable | topic end

Start of topic | Skip to actions
Versão em Português

The Binary Clock in HMS Mode

Instructions to read a binary clock in Hour-Minute-Second or "3 group binary" mode (often erroneously called "true-binary" mode), along with a visual JavaScript simulation with hints.

JavaScript Simulation

17 41 23
Hints: LED Values

If your browser supports JavaScript and you have it enabled, the example above should be "live", showing the current time from your computer's clock and updated once a second just like the real-life binary clock, but with extra hints to help you understand the display. Click on the checkboxes to disable/reenable the various levels of hits as you gain experience.

If your browser does not support JavaScript or you don't have it enabled, the picture above will be static, sorry.

How to read the time in HMS or "3-group binary" mode

This mode is similar to the original BCD mode, but each pair of columns act as if they were stacked one above the other. Refer to the diagram above to see the LED values in this mode.

It looks like it is much harder to read because, in principle, there are sixty possible patterns to memorize. However, if you memorize the 16 possible patterns for the "low nibble" (bits valued 1 to 8), then there are only 4 possible patterns of the high bits, adding 0, 16, 32 or 48 to the value of the low nibble. So, with a little practice, you can do that just as fast and amaze your friends.

A way to sound very smart and impress your friends is to point out that in this mode, the last LED of each group (the "64" in the seconds and minutes group or the 32 in the hour group) never lights: as the maximum number of minutes is 59, we'll never need to use the LED that represents 64. Likewise, as the maximum value for the hours is 23, we'll never need the LED that represents 32.

If you want to sound pedantic, you may point out that there are only two number bases here: the time is first converted to sexagesimal and then each sexagesimal "digit" is converted directly to binary, where the low nibbles go in the columns with four rows and the high nibbles go to the remaining columns. This is in contrast to the BCD mode, where we had three number bases in action.

If you want to sound really pedantic, you may bring up the issue that, because the BCD thing is not involved, some people incorrectly call this mode "true binary". But since we're still using sexagesimal as an intermediate representation, the term "true binary" doesn't look that much appropriate. A real true binary clock would be too hard to read to be of much practical use.

If you still want to go further, you could say that this mode uses the minimum number of LEDs possible: 17 (yeah, there are 20 LEDs but remember that, in this mode, three of them will never light). The not-so-obious thing is why it can't be done with less than that. But this is easy to prove: there are 24 hours times 60 minutes times 60 seconds = 86,400 seconds in a day. One LED can stand for only two possible numbers: 0 and 1. Two LEDs can represent four numbers: 00, 01, 10 and 11. Three LEDs can represent eight numbers, four LEDs can represent 16 numbers, and so on. In general, n LEDs can represent 2n numbers. Going further, we see that 16 LEDs represent at most 65,536 numbers, which is still less than the 86,400 seconds in a day. However, 17 LEDs can represent, 131,072 numbers -- where the 86,400 seconds in a day fit with room to spare.

You are here: Kiko > EmbeddedSystems > BcdClock > TheBinaryClockInHMSMode


Creative Commons License   The content of this site is made available under the terms of a Creative Commons License, except where otherwise noted.
  O conteúdo deste site está disponibilizado nos termos de uma Licença Creative Commons, exceto onde dito em contrário.