Jump to content

Count to 1000 in binary


zx0

Recommended Posts

101010110 <- fixed again.

A binary bit is a single binary digit (0, 1).

A byte is 8 binary bits (represents decimal 0-255)

The value 8 bits to a byte came about because of memory I think. In the beginning, memory on computers wasn't consistently byte addressable. Different computer manufacturers used different numbers of bits per memory address. 6 bits, 2 bits, 7 bits, and other combinations were all used. Eventually through whatever happened back then people all started settling on 8 bit addressable memory (byte addressable memory). So now we have the standard that exists today (8 bits to every memory address). The wikipedia page would have more information about the history than I can provide.

The whole idea of memory being byte addressable seems to have happened by coincidence though. 8 bits to a byte appears to be a convenient number which is why it was chosen :P. However, now that memory is standardized as byte addressable, we're able to accurately say what the memory limit is on n-bit machines (64 bit, 32 bit, 16 bit, etc.) The n-bit categorization is a count of the number of address lines are on the bus. 16 address lines can reference addresses between 0000 0000 0000 0000 and 1111 1111 1111 1111 which in decimal translates to 0 to 65,355. Since each address corresponds to 1 byte, you can say that the max amount of memory available to a 16 bit machine is 64KB = 65,356 bytes. By the same math, modern 64 bit computers are able to address up to 17,179,869,184GB = 16,777,216TB.

Link to comment
Share on other sites

101011001

Wow that was a lot to take in. Thanks I got the first paragraph but the second is a bit more advanced, but luckily I don't have to know that right now =)

Computers are so complicated and yet they are doing this all the time right in front of me as if it was nothing, amazing.

Link to comment
Share on other sites

101011100

@lemming: Yeah I always look at things and try to work them out and realize just how complicated they are and that it would take a life time to become a true expert in that profession, a little bit depressing that we have such a short life time to live and explore.

@boink: endienness? What's that?

Link to comment
Share on other sites

101011101

Endianness is the order that the bits/bytes are in. Big endian means that the first bit is the one with the highest value (that's the way that we're counting in this thread). Little endian means that the first bit is the one with the smallest value. Basically, when a binary number is stored in little endian, then it's stored in reverse.

note: Generally in programming the endianness changes the order of the bytes, not the bits. So each grouping of 8 bits is left unchanged, but the order that each group appears is reversed.

Link to comment
Share on other sites

101011110

I understand most of the stuff that goes on between CPU and memory although not on a per-machine basis (meaning I couldn't tell you EXACTLY how a certain machine works). However the theory I know is flexible. Stuff I don't know includes stuff like memory controllers, how the north bridge works, where Waldo is, etc.

Link to comment
Share on other sites

101100000

I do know how the programs get compiled and executed and how the OS handles processes and threading, but I don't know exactly how the OS is programmed. I've programmed on just about every level of abstraction that you can program on (high order languages down to microcode and even crafting logic circuits). I have a very rough idea of how the physics works, and I have a similarly rough idea of how the chips are manufactured. I also have a good grasp of computing theory.

Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...
Please Sign In