home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.arch
- Path: sparky!uunet!pipex!ibmpcug!impmh!dsg
- From: dsg@impmh.uucp (Dave Gordon)
- Subject: Re: big + little endian (was: Comparison of Alpha, MIPS ..)
- Message-ID: <1993Jan11.170039.7109@impmh.uucp>
- Organization: Integrated Micro Products Ltd
- References: <1992Dec29.044012.1@cc.curtin.edu.au> <3623363@zl2tnm.gen.nz> <WAYNE.92Dec30093950@backbone.uucp> <markg.79.726169747@county.lmt.mn.org> <1993Jan6.171242.2895@lsl.co.uk>
- Date: Mon, 11 Jan 1993 17:00:39 GMT
- Lines: 76
-
- In <1993Jan6.171242.2895@lsl.co.uk> snail@lsl.co.uk writes:
- >In article <markg.79.726169747@county.lmt.mn.org>, markg@county.lmt.mn.org (Mark Gilbert) writes:
- >> In article <WAYNE.92Dec30093950@backbone.uucp> wayne@backbone.uucp (Wayne Schlitt) writes:
- >>>From: wayne@backbone.uucp (Wayne Schlitt)
- >> I have identified the root of this whole big-endian/little-endian debate.
- >> The conflict is is between text and numbers. We read left to right. But,
- >> if you were to number the digits of an integer, you would do it right to
- >> left. The one's digit would be 0, the ten's digit, 1, etc.
- >>
- >> This should never have been the case. We adopted our number system from the
- >> Arabs, and the Arabs read right to left. For them, the direction of reading
- >> text and numbers is CONSISTENT. The whole problem arose because we failed
- >> to reverse the numbering system when we borrowed it from the Arabs.
- >>
- >> I propose that we now correct this historical oversight. Let us write
- >> numbers least significant digit first. The bang symbol can be used to
- >> replace the decimal point, in order to distinguish little-endian numbers
- >> from big-endian. The integer six hundred and fifty four should now be
- >> written !456. Sixteen dollars and twenty five cents is now $ 52!61.
- >
- >You've just proved yourself wrong!
- >
- >The number six-hundred and fifty four is written 6-5-4, left to right, exactly
- >the way we write. That is, I read that I have 6 hundreds before I'm interested
- >in finding out how many tens or units I have. Now I may had to scan the number
- >for length to work out that the 6 refers to hundreds, but that is a separate
- >operation.
- >
- >The number !456 would be read as 4 and fifty and 6 hundred. If I were to read
- >that as six hundred and fifty four, I would still have to scan the number to
- >find the hundreds digit, then the tens then the units and combine this to give
- >the number six hundred and fifty four.
- >
- >So either way, we must scan the number, just that currently we write the number
- >the way we say it.
- >
- >Also: surely $16.25 is actually 52!61$ in your scheme?
- >--
- >snail@lsl.co.uk
-
- Note that not all European languages scan numbers the same way:
- English is generally big-endian, except for 13-19 (the words
- for these numbers put the units before "teen" suffix); German
- consistently puts the units before the tens (but after the hundreds);
- and French is a complete disaster for consistency, with wierd
- constructions like soixante-dix, quatre-vingts, etc.
-
- Also note yet further inconsistencies when the numbers refer to times;
- many people still read an analogue clock showing 11:35 as "five-and-twenty
- to twelve"; [similar oddity in German: 1125 read as "funf vor halb zwolf"
- i.e. five (minutes) before half (to) twelve].
-
- If consistency were the primary requirement, the best solution
- would be to reverse the order of writing as proposed above, *AND*
- reverse the order of speaking to start with the least-significant
- digit. But the convenience of knowing the most-significant digit
- first (and often, that's all you really care about) probably
- outweighs the wish for consistency.
-
- [ObSillyNotationalSuggestion]
- How about prefixing written numbers with a scale indicator, thus
- eliminating the need to prescan the digit string to find the
- magnitude (and hence the appropriate number-name for the first digit).
- Thus 12345654321 (twelve thousand three hundred and forty-five million,
- six hundred and fifty-four thousand, three hundred and twenty-one (UK)
- or twelve billion, three hundred forty-five million, six hundred
- fifty-four thousand, three hundred twenty-one (US)) could be written
- as "(10)12345654321". The (10) indicates that the first digit
- represents 10^10, and helps avoid errors in counting the digits
- that follow when reading/speaking the number.
- --
-
- ===============================================================================
- Dave | dsg@imp.co.uk | +44 753 516599 | I am not a .sig virus, I am a free bug!
- ===============================================================================
-
-