bitfield diagram - interpretation welcomed!

D

Doug

Hi all,

A workmate was recently bitching to me about an RFC.

(Apologies - the RFC number eludes me at present (it's related to the
DIAMETER protocol, that's all I can remember) but I will try to find
out and update the thread.)

He was moaning how the RFC laid out the description of an 8-bit
field. According to him, the diagram was (fixed-width font required,
but it won't really matter, and I've omitted the schematic-like use of
-,| and + that the RFCs usually use):

0 1 2 3 4 5 6 7
F F X X X Y Y Y P

The odd thing for him (and me) was the ordering of the bit numbers in
the diagram - increasing from left to right. According to him, there
was absolutely no description of what this diagram meant. In other
words, is the 0-bit in the diagram the Most Significant Bit, or the
Least Significant Bit?

We work with network protocol specfications, so suffice to say this
lack of precision was surprising to him (and on his relaying the
story, is surprising to me). He has already found products during
interop testing with the two different interpretations.

This is apparently an early draft of the RFC, and he will be
requesting clarification, but I was wondering what your people's take
on it was? How would you intepret this?

Thanks in advance,
Doug
 
T

Terminal Crazy

A workmate was recently bitching to me about an RFC.
(Apologies - the RFC number eludes me at present (it's related to the
DIAMETER protocol, that's all I can remember) but I will try to find
out and update the thread.)
He was moaning how the RFC laid out the description of an 8-bit
field. According to him, the diagram was (fixed-width font required,
but it won't really matter, and I've omitted the schematic-like use of
-,| and + that the RFCs usually use):
0 1 2 3 4 5 6 7
F F X X X Y Y Y P
The odd thing for him (and me) was the ordering of the bit numbers in
the diagram - increasing from left to right. According to him, there
was absolutely no description of what this diagram meant. In other
words, is the 0-bit in the diagram the Most Significant Bit, or the
Least Significant Bit?


It doesn't matter, bit 0 is always the lowest.

HTH
 
D

Doug

Ahem,

Please ignore me completely. The bitfield diagram appears within a
PDU diagram, the bit numbering is completely normal for an RFC.

My apologies for wasting your time and bandwidth.

Doug
 
B

Ben Pfaff

Terminal Crazy said:
It doesn't matter, bit 0 is always the lowest.

Most of the world agrees, but IBM mainframers number their bits
"backward", so that bit 0 is the MSB.
 
D

Doug

It doesn't matter, bit 0 is always the lowest.

HTH

Hi Mitch,

Thanks for your reply.

Actually, in this case - and I thought the same as you when my
workmate described this to me - bit 0 in that diagram is actually the
MSB. The context I was missing (but have since found in a code
comment) is that it appears within an RFC digram of a PDU. These
diagrams assume 8 bit bytes, and are written left to right 0, 1,
2, ... usually to 32/64, so the diagram lines up nicely over multiple
rows. The numbering doesn't reflect the MSB/LSB ordering - the right-
most bit in each octet in the diagram is still the LSB.

Sorry for any confusion!

Thanks,
Doug
 
F

Flash Gordon

Ben Pfaff wrote, On 18/05/07 22:18:
Most of the world agrees, but IBM mainframers number their bits
"backward", so that bit 0 is the MSB.

It's not only IBM that use 0 as the MSB. To confuse things further I've
seen documents numbering bits from 1.

Moral of the story, always read the full specification and never assume
you know what it will say in advance.
 
B

Barry

Ben Pfaff said:
Most of the world agrees, but IBM mainframers number their bits
"backward", so that bit 0 is the MSB.

Which is precisely why the protocols are not defined based upon
the architecture of the transceivers. CBFalconer has stated below
that the HP3000 was "backward", but the network devices
connected to its system bus were not necessarily :).
 
K

Kenneth Brody

Barry said:
CBFalconer said:
Ben Pfaff wrote: [...]
It doesn't matter, bit 0 is always the lowest.

Most of the world agrees, but IBM mainframers number their bits
"backward", so that bit 0 is the MSB.

Also the HP3000.

Of course C was not the language of choice on the HP3000. :)

My first exposure to computers was, I believe, an HP-3000. I forget
the exact model number. I never actually saw the machine, either,
as it was in some other city at the other end of a telephone line.
The only language we had access to was some primitive form of BASIC.

On the other hand, I still recall the login:

HELLO-B669,<password>

(I still use that password on some systems.)

--
+-------------------------+--------------------+-----------------------+
| Kenneth J. Brody | www.hvcomputer.com | #include |
| kenbrody/at\spamcop.net | www.fptech.com | <std_disclaimer.h> |
+-------------------------+--------------------+-----------------------+
Don't e-mail me at: <mailto:[email protected]>
 
R

Richard

Terminal Crazy said:
It doesn't matter, bit 0 is always the lowest.

Did you mean the least significant? Not so.

I came across some IBM stuff recently where bit 0 was the MSB. Really. I
was shocked.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,769
Messages
2,569,576
Members
45,054
Latest member
LucyCarper

Latest Threads

Top