[aprssig] A funny packet story/joke (The KISS guys will get it)

Tad Burnett tburnett at vermontel.net
Wed Nov 9 11:13:10 EST 2005


I am not sure if you pointed out that the reason that  octal and hexadecimal
are easy to convert from binary....with 3 binary bit combination you can
make 8 different combinations...0 - 7.....With 4 binary bits you can make
16 combinations  0 -F.....
If you stay with the old decimal system..0 - 9 you can do it nicely with 
your
fingers...probably the origaon..But you can't do it with 3 binary bits 
and if
you go to 4 bits than you are wasting some of the bit combinations...
Thus in the old days when bits took a lot of space the engineers designed
a new numbering system that used all the combinations of the bits...
Tad N1QAG

Bill Herrmann wrote:

> At 06:46 PM 11/8/2005 -0800, Curt Mills wrote:
>
>> Computer science people live by hexadecimal, at least if they do
>> embedded programming.  Of course they used to use octal, where you
>
>
> Curt didn't mention the reason and I thought some might be interested...
>
> Both hexadecimal and octal are relatively easy to convert to and from 
> binary. Decimal (base 10) is harder. So, computer science people use 
> them to make the representation easier.
>
> Octal represents three binary digits (bits) per digit.
> Hexadecimal represents 4 bits per digit.
> Octal was used most commonly till the word size on machines started 
> stabilizing on multiples of 8 bits when hexadecimal made more sense.
>
> Units:
> bit - binary digit - the good old 1 or 0.
> nibble - 4 bits
> byte - 8 bits
> word - depends on the machine, 2 bytes and 4 bytes are common,
>
> At 09:04 PM 11/8/2005 -0500, Tad Burnett wrote:
>
>> And 8000 < 7FFF (sometimes) ???
>
>
> In signed 16 bit arithmetic it can.
> The 0x part of 0x8000 is one way to say "the following number is a 
> hexadecimal representation."
>
> In most systems a signed number is indicated by the top or most 
> significant bit (MSB) because it makes the physical implementation 
> easier.
>
> 0x8000 would be -32768 decimal and 0x7fff would be +32767 in a 16 bit 
> signed integer. 0x8000 is 1000000000000000 in binary. To understand 
> why it's done that way add 1. The answer, of course, should be (and 
> is) -32767. If you keep doing that you wind up with 0xffff which is 
> 1111111111111111 binary or -1 decimal. Add 1 to that and ignore the 
> carry at the top and you just wound up with 0 which is, of course, the 
> desired result.
>
> To know whether 0x8000 is greater than or less than 0x7fff you have to 
> know (a) if it's a signed integer and (b) what size the integer is. In 
> other words on a small 8 bit microprocessor 0xFF might be -1 while on 
> a 32 bit machine it would be 255 and -1 would be 0xFFFFFFFF. So, 
> 0x8000 is -32768 for a signed 16 bit integer.
>
> Bill
>
>
>
> _______________________________________________
> aprssig mailing list
> aprssig at lists.tapr.org
> https://lists.tapr.org/cgi-bin/mailman/listinfo/aprssig
>
>





More information about the aprssig mailing list