|
Prev: What's the meaning of "a model set of integers (reals)" in Fortran?
Next: Wrong code, I could not find the error
From: Richard Maine on 1 Feb 2008 11:51 hermitian <iamwuxin(a)gmail.com> wrote: [about model numbers] > One more question, does every k_w (zero or one) correspond to the > computer bit (zero or one) used to store the integer? Sort of, but you are missing an important point. This is Fortran's model. As such, it is much like the some common machine representations. But this is not necesarily the actual machine representation. This is a *model* (thus the term) - not the actual machine. Like any mathematical model, it can fall short of perfection in representing the real world. This Fortran model is used to allow inquiry about and manipulation of some low-level aspects of numeric representations in a portable way. Bob commented a bit more on this. The following are two specific ways in which actual representations often differ from the Fortran model. 1. The Fortran model is a sign-magnitude one. It is symmetric with respect to sign. Sign magnitude is common in actual floating point representations. It is rare for integers. Most integers today are done in 2's complement (if I didn't get that term backwards, which I might have; I have to think a bit to get 2's complement versus 1's complement straight). Thus, for example, a negative 1 is not represented like a postive 1 with just the sign bit changed. Instead, a negative 1 has all the bits 1 (they got complemented). This just turns out to be (very) handy for hardware implementation. 2. The Fortran model doesn't have anything like the IEEE hidden bit or the various IEEE special forms (denormalized numbers, infinities, and NaNs). -- Richard Maine | Good judgement comes from experience; email: last name at domain . net | experience comes from bad judgement. domain: summertriangle | -- Mark Twain |