[Courses] One last diversion on binary, and then I'll shut up for a while.

Kevin Cole dc.loco at gmail.com
Wed Mar 7 19:18:53 UTC 2012


On Wed, Mar 7, 2012 at 13:48, Sachin Divekar <ssd532 at gmail.com> wrote:

>
> I have found all of your explanations very easy to understand. I am really
> enjoying reading your descriptions. And the reference to Arthur C.
> Clarke's
> quote, "Any sufficiently advanced technology is indistinguishable from
> magic."
> is perfect. Many technical concepts, we just consider they are
> there and they are right, we never think about the theory behind them.
>

Yeah, but it's a C course, and I don't want to digress things too much, nor
take time from our esteemed instructor.


> Your explanation of processor architectures and compilers in the last
> paragraph
> is also very easy to understand.
>

Aw shucks. T'wern't nuthin'.


> It would be great if you explain the significance of 64 bit processors in
> *your style*. Your rambling is welcome. :-)
>

Interesting choice of words there: "significance" as in you almost answered
your own question. ;-) Really not a lot to say here. More bits = more
"significant" digits in mathematical calculations, a larger potential
vocabulary for your machine language, and the ability to address more
memory, because now the processor "goes to 11" ;-) Since it can "count
higher" it can handle addresses that are further away from location 0, and
if each possible value is a potential code for an instruction, well, more
instructions are possible.  So, operations that used to require multiple
machine language instructions to get a job done may now require only one,
because the designers added the equivalent of a contraction to the
vocabulary list.

The architectures are designed to "chunk" groups of bits together as
"words" to handle work more efficiently.  The size of the chunks are
limited by the laws of physics and economics -- how small can the
components be made, how much heat will they generate, how much does it cost
to manufacture them? That said, if you have something that exceeds the
limits of the the "word size" computers generally find a kludge to handle
such problems... up to a point.  Shrinking back down to our more managable
model of the 4-bit word on our eensy-weensy computer that can handle
numbers from 0 to 15, if the language is designed to accommodate you, when
you want to work with numbers up to, oh say, 31, it has the ability to do
summersaults while juggling to use two words together.  Generally slower
than a system designed to handle larger word sizes.


More information about the Courses mailing list