## Cisco Binary Conversion

What did I learn from this assignment? That even though adding up binary numbers may be a simple process, its very easy to have error when you are being timed. Before this assignment I had known very little about binary numbers. I had known that only 1’s and 0’s were used, it increments on a 2^x basis, and it’s the coding language that software generally uses to communicate with the hardware, but that was about it.

While playing through the game I discovered a few tricks:

1.) A quick cheat sheet for binary conversion is that each time a new digit is added to a binary number, its decimal counter part is 2^x. This means that 1, 2, 4, 8, 16, 32, 64, and 128 are all decimal numbers where a new digit is added to a binary number. And every time you add a new digit to a binary number, the decimal counterpart is 2x the last one (ex: 10 -> 100 and 2 -> 4). I’m not sure if these specific numbers have a special name or not, but for the sake of the rest of this writing assignment, let’s call them primary decimal numbers or PDN.

2.) When given a number to convert (such as 65), always subtract it with the closest primary number to it (such as 64). If the primary number is less than the number needed to be converted, then place a 1 in that digits position and then take the remainder of that number and subtract it with the next closest primary number. If the primary number is greater than the number needed to be converted, then place a 0 in that digits position. Repeat this process until your remainder is zero, in which case you will place a zero in all remaining digits. If you still have a remainder by the time you get through all of the primary numbers, then you obviously did something wrong.

3.) If asked to convert a number like 127, 63, 31, 15, etc. you would only have 1’s. So the binary number for 15 is 1111. This is because these numbers are 1 less than the primary numbers. So they are on the verge of adding a new digit to their number.

As an assignment, I see this as pretty useful. In my CS 1400 class we had to work a little bit with binary and hexidecimal numbers. Alas, I took CS 1400 at USU, and it seems as though the programming classes here at SLCC use binary and hex numbers much more often than we did at USU. So I feel a little behind in binary and hexidecimal conversions, so its nice that I can use this game to help speed up my conversion process and catch up with the other students in my 1410 class.

What I didn’t like about the game is that it was a very poorly developed game. It wouldn’t let you use the num keypad when you had to input the converted number into a text box, greatly reducing your speed. Also the buttons would always move up the screen whenever a new line was introduced, so trying to hit the right buttons eventually got kind of difficult. The game should’ve acted a bit more like tetris, by dropping the lines from the top of the screen down as far as they could go and tower upwards, making the buttons stay pretty much stationary yet also keeping the timing mechanics the game had.

## Leave a Reply