I've never understood this. Isn't there a chicken and egg problem?
How do we know that the theorem prover is correct and bug free?
[It's a perfectly reasonable question. Alan Perlis, who was my thesis advisor, never saw any reason to believe that a thousand line proof
was any more likely to be bug-free than a thousand line program.
-John]
[The history of formal description of programming languages is not encouraging. Back in the 1970s the ANSI PL/I standard was defined in
terms of formal operations on trees, but even so it had bugs/errors.
Also, per your comment on addition, in a lot of cases the practical definition turns into whatever the underlying machine's instruction
does. Until recently the C standard was deliberately unclear about
whether arithmetic was ones- or twos-complement. -John]
The upcoming 2023 standard mandates two's complement. And it
requires INT_MIN to be exactly -INT_MAX-1; previously INT_MIN could
be equal to -INT_MAX, and -INT_MAX-1 could be a trap representation.
It still permits padding bits and trap representations.
Note that twos's complement *representation* doesn't imply two's
complement *behavior* on overflow. Signed integer overflow still
has undefined behavior.
Too bad for those CDC computers, and Unisys computers.
Last I know of sign-magnitude is the IBM 7090 and 7094.
On 2/6/23 10:26 PM, gah4 wrote:
Too bad for those CDC computers, and Unisys computers.
Last I know of sign-magnitude is the IBM 7090 and 7094.
AFAIK use IEEE-754 floating point numbers still sign-magnitude representation.
Then the same representation of integral numbers may have advantages in computations.
[I presume the sign-magnitude is to enable the hidden bit trick,
which doesn't apply in unscaled integers. -John]
AFAIK use IEEE-754 floating point numbers still sign-magnitude >representation.
Then the same representation of integral numbers may have advantages in >computations.
[I presume the sign-magnitude is to enable the hidden bit trick,
which doesn't apply in unscaled integers. -John]
On 2/6/23 10:26 PM, gah4 wrote:
Too bad for those CDC computers, and Unisys computers.
Last I know of sign-magnitude is the IBM 7090 and 7094.
AFAIK use IEEE-754 floating point numbers still sign-magnitude representation.
Then the same representation of integral numbers may have advantages in computations.
DoDi
[I presume the sign-magnitude is to enable the hidden bit trick,
which doesn't apply in unscaled integers. -John]
With a ones-complement or two's-complement mantissa the hidden bit
would just have the same sign as the sign bit, so this trick is not
tied to sign-magnitude representation.
Please explain the provenience or purpose of that hidden bit with
integral numbers. How can integral values be *normalized* so that a previously required bit can be hidden? Sign extension to a higher number
of bits does not increase the value or accuracy of an integral number.
[He said "mantissa", so it's floating point. I've certainly seen scaled integer arithmetic, but normalized integers other than +/- zero in systems with signed zeros seems unlikely. -John]
But also, the 704 Fortran, and I believe still the 7090,
indexes arrays from the end of memory toward the beginning.
[It did because for reasons I have never been able to figure out,
the 70x series subtracted rather than added the contents of
an index register to get the effective address. -John]
[I am not aware of any hidden bit formats before IEEE
The three index registers were 1,2, and 4, and if you specified more
than one, it OR'ed them together and subtracted the result, which was
really strange. There were a lot of other machines with index registers
but none I know of that subtracted or OR'ed. I have also been unable to tell whether the OR'ing was deliberate or just a result of minimizing
the number of tubes that they then documented.
[Oh, right, I forgot about Zuse. He invented a lot of stuff that other
people reinvented later. Squinting at my VAX architecture handbook, the formats have the same layout as IEEE but the exponents are excess 128 and 1024 rather than 127 and 1023 and there's no infinities or denormals. -John]
| Sysop: | Amessyroom |
|---|---|
| Location: | Fayetteville, NC |
| Users: | 59 |
| Nodes: | 6 (0 / 6) |
| Uptime: | 19:24:24 |
| Calls: | 810 |
| Calls today: | 1 |
| Files: | 1,287 |
| D/L today: |
10 files (21,017K bytes) |
| Messages: | 193,978 |