Yesterday's Advent of Code puzzle had everyone thinking about bits!
Here's a tip: if you need to write out the numbers from
n in binary, do it by column rather than by row. The rightmost column is alternating zeroes and ones (
010101...), the next column is alternating by twos (
00110011...), next is by fours (
00001111...), and so on.
0000 0001 0010 0011 0100 0101 0110 0111 1000 1001 1010 1011 1100 1101 1110 1111
Easy peasy! I don't think I could write the numbers from
15 in binary without making a mistake.
For many years, I had the pleasure of working with Cray computers. These had a "blob" character which was the entire area for a character filled in (just a rectangle) and we would usually look at bits with dots and blobs instead of zeroes and ones.
.... ...⬜ ..⬜. ..⬜⬜ .⬜.. .⬜.⬜ .⬜⬜. .⬜⬜⬜ ⬜... ⬜..⬜ ⬜.⬜. ⬜.⬜⬜ ⬜⬜.. ⬜⬜.⬜ ⬜⬜⬜. ⬜⬜⬜⬜
You might think a blank for a
0 would be a better analogue for a blob, but it turns out that makes it too hard to tell the difference between say 4 zeroes and 5 zeroes. Blobs didn't quite go edge to edge, I guess, because they didn't have a similar problem. I am using the Unicode character BLACK LARGE SQUARE to simulate blob above; real blobs were more rectangular and nearly touched vertically as well as horizontally. Oh, well. Real dots and blobs were a nice way to look at bits. I guess you'll just have to trust me.
Edit: Blobs were also the same fixed width as all other characters. These are showing up too wide with this font. That is, the four blobs at the bottom should be the same width as the four dots at the top. It looked right in my editor when I was writing it.
On an ASCII terminal, we would usually use X's instead of blobs.
.... ...X ..X. ..XX .X.. .X.X .XX. .XXX X... X..X X.X. X.XX XX.. XX.X XXX. XXXX
Not quite as nice as blobs, but still better than