But that "K=1024" usage was ONLY because in the context of Assembler
coding you were dealing with processor memory addresses in hardware
instructions, and memory on the S/360 (and its successors) was addressed
by binary values of 24 bits (later 31 bits). So the S/360 PoOp and ASM
manuals, only in discussing memory addresses and blocks of memory, for
brevity used "K" and "M" for close powers of 2. Those manuals were also
very careful to explicitly state that was the convention being used --
precisely because it was not the conventional usage in other contexts,
even within IBM and S/360 (like as Mike recently pointed out, for metric
physical length measurements in IBM manuals, or for DASD).
Other S/360 manuals which dealt with storage measurement in contexts
other than processor memory or blocks of processor memory, most notably
those having to do with DASD and DASD external storage capacity in
bytes, used "K" and "M" with the conventional meanings of powers of 10.
Somewhere along the line a confused notational convention became even
more confused as succeeding generations failed to understand the
underlying rational for the distinct conventions, and in some cases
perhaps even failed to recognize there were two usage conventions.
Usage also got further confused with FBA disk devices with capacity
defined as n*b Bytes, where "b" was a power of 2 and "n" was not.
Where "b" was 512, this made "1024" a convenient multiplier to use for
"K", but some also chose 1000*1024 as a more natural multiplier for M
since the binary dependency ended at 2^9. ... and then you had a
similar issue with describing capacity of Page Data Sets (and now also
Linear Data Sets and PDS/E's) on CKD DASD, where the DASD architecture
has no relation with binary but the physical blocks represent "4K"
processor memory pages, so you have a non-binary-related quantity of 4
KiB blocks.
Those who understood the problem talked about resolving this confusion
in various incompatible ways for over three decades before the binary
prefix standard was finally adopted in 1998. Now if needed, we even have
precise notation for 1000*1024 as "KKi" (which makes it more precise,
but still aesthetically displeasing).
Joel C. Ewing
On 05/03/2013 05:08 PM, Scott Ford wrote:
Shmuel,
I always used K, with the understanding it was 1024 ...if you write assembler a
base register used to cover 4K ,,4096 bytes ....it's all through IBM manuals as
far as I know ...unless your doing baseless.....
Scott ford
www.identityforge.com
from my IPAD
'Infinite wisdom through infinite means'
On May 3, 2013, at 3:58 PM, "Shmuel Metz (Seymour J.)" <[email protected]>
wrote:
In <[email protected]>, on 05/02/2013
at 09:16 PM, Scott Ford <[email protected]> said:
Ok guys ..I understand the science here but I learned a K = 1024
bytes
Back in the 1960's people who used K when they meant 1024 unsderstood
that they were misusing it. In the same epoch I also learned that K
was 512, which was an even worse misuse.
am I too old school .....
No; were you old schjool then you would use K as 1000 exclusively.
--
Shmuel (Seymour J.) Metz, SysProg and JOAT
Atid/2 <http://patriot.net/~shmuel>
We don't care. We don't have to care, we're Congress.
(S877: The Shut up and Eat Your spam act of 2003)
--
Joel C. Ewing, Bentonville, AR [email protected]
----------------------------------------------------------------------
For IBM-MAIN subscribe / signoff / archive access instructions,
send email to [email protected] with the message: INFO IBM-MAIN