I've added a warning underneath a misleading image in the GDT article. The limit and flags fields need to be swapped, also the image doesn't specify the bit ordering and yet uses a nonstandard layout (LSB is usually on the LEFT).
This was brought about by some rightful confusion on IRC. I don't know who owns the image, but a newer version would be awesome.
Cheers ears
Incorrect image in article "GDT"
- thepowersgang
- Member
- Posts: 734
- Joined: Tue Dec 25, 2007 6:03 am
- Libera.chat IRC: thePowersGang
- Location: Perth, Western Australia
- Contact:
Re: Incorrect image in article "GDT"
You asked, and my graphics tablet and I responded. I have uploaded a new version and have attached the source SVG (for Inkscape) if anyone else wants to edit it.
(Sorry about zipping it up, but the forum doesn't allow .svg's )
(Sorry about zipping it up, but the forum doesn't allow .svg's )
- Attachments
-
- GDT_Entry.svg.zip
- Source SVG to [wiki]Image:GDT_Entry.png[/wiki]
- (2.22 KiB) Downloaded 187 times
Kernel Development, It's the brain surgery of programming.
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
Acess2 OS (c) | Tifflin OS (rust) | mrustc - Rust compiler
Currently Working on: mrustc
-
- Member
- Posts: 134
- Joined: Thu Aug 18, 2005 11:00 pm
- Location: Sol. Earth. Europe. Romania. Bucuresti
- Contact:
Re: Incorrect image in article "GDT"
The original image was correct with respect to LSB and MSB bit. In English and technical writing Most Significant (Semnificative) Bit (MSB) is left most and Less Significant Bit (LSB) is right most.
This is similar to the way western culture writes the number 1,287 on paper ie: One thousand, two hundred and eighty seven units. MSB is 1 (at most left position) and LSB is 7 (at most right position).
Also... the most significant byte is at higher addresses and the less significant byte is at lower address on Intel CPU and this is the only correct way (technically) but unfortunately it is not very easy to read in a hex dump.
The only notable exception is in network protocols where people that did not understand this simple issue have reversed the correct order presumably for the sole purpose of reading the hex dump of network packets with more ease. And this generated confusion "for ever" in the "IT world".
We...the western people do write numbers in "logical reverse" from the normal text flow because we have copied the numeric system from the Arabic people in early history and did not really understood what we were doing at that time.
This is similar to the way western culture writes the number 1,287 on paper ie: One thousand, two hundred and eighty seven units. MSB is 1 (at most left position) and LSB is 7 (at most right position).
Also... the most significant byte is at higher addresses and the less significant byte is at lower address on Intel CPU and this is the only correct way (technically) but unfortunately it is not very easy to read in a hex dump.
The only notable exception is in network protocols where people that did not understand this simple issue have reversed the correct order presumably for the sole purpose of reading the hex dump of network packets with more ease. And this generated confusion "for ever" in the "IT world".
We...the western people do write numbers in "logical reverse" from the normal text flow because we have copied the numeric system from the Arabic people in early history and did not really understood what we were doing at that time.
Ambition is a lame excuse for the ones not brave enough to be lazy; Solar_OS http://www.oby.ro/os/
-
- Member
- Posts: 204
- Joined: Thu Apr 12, 2007 8:15 am
- Location: Michigan
Re: Incorrect image in article "GDT"
Umm, the Intel manual places least significant bit on the right, most significant bit on the left, and lowest address on the bottom, highest address on the top. I've attached a screenshot of Figure 3-8 from section 3.4.5 of Intel® 64 and IA-32 Architectures Software Developer's Manual, Volume 3A: System Programming Guide, Part 1 to demonstrate.
Some people are offended by the verifiable truth; such people tend to remain blissfully unencumbered by fact.
If you are one of these people, my posts may cause considerable discomfort. Read at your own risk.
If you are one of these people, my posts may cause considerable discomfort. Read at your own risk.
-
- Member
- Posts: 134
- Joined: Thu Aug 18, 2005 11:00 pm
- Location: Sol. Earth. Europe. Romania. Bucuresti
- Contact:
Re: Incorrect image in article "GDT"
Yes, I say the same as Intel does in his documents with some additional explanations for the cultural and technical reasons behind endian issues.
I have reacted to this statement:
I have reacted to this statement:
that I've considered as misleading ...JamesM wrote: ...
(LSB is usually on the LEFT).
...
Ambition is a lame excuse for the ones not brave enough to be lazy; Solar_OS http://www.oby.ro/os/
- Owen
- Member
- Posts: 1700
- Joined: Fri Jun 13, 2008 3:21 pm
- Location: Cambridge, United Kingdom
- Contact:
Re: Incorrect image in article "GDT"
Network Byte Order (AKA Big Endian) predates the common use of Little Endian CPUs by about a decade...
Also, byte ordering is not comparable to how we write numbers, since the comparable unit there is bits. Byte ordering is different, more confusing, but with good technical reasoning.
Also, byte ordering is not comparable to how we write numbers, since the comparable unit there is bits. Byte ordering is different, more confusing, but with good technical reasoning.
Re: Incorrect image in article "GDT"
Yes, sorry about that, I meant the opposite. Late night and reacting to comments on IRC!bontanu wrote:Yes, I say the same as Intel does in his documents with some additional explanations for the cultural and technical reasons behind endian issues.
I have reacted to this statement:that I've considered as misleading ...JamesM wrote: ...
(LSB is usually on the LEFT).
...
(LSB is usually on the RIGHT)
Sorry for the confusion! The image was backwards: the LSB *was* on the left, it *should* have been on the right.