Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.compilers > #3369
| From | gah4 <gah4@u.washington.edu> |
|---|---|
| Newsgroups | comp.compilers |
| Subject | Re: C arithmetic, was Software proofs, was Are there different |
| Date | 2023-02-06 13:26 -0800 |
| Organization | Compilers Central |
| Message-ID | <23-02-026@comp.compilers> (permalink) |
| References | <23-01-092@comp.compilers> <23-02-003@comp.compilers> <23-02-019@comp.compilers> <23-02-025@comp.compilers> |
On Sunday, February 5, 2023 at 6:01:04 PM UTC-8, Keith Thompson wrote: (snip) > 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. Too bad for those CDC computers, and Unisys computers. Last I know of sign-magnitude is the IBM 7090 and 7094. > Note that twos's complement *representation* doesn't imply two's > complement *behavior* on overflow. Signed integer overflow still > has undefined behavior. Overflow behavior mostly depends on the hardware. Many computers, such as the IBM S/360 and successors, have a bit that enables or disables the fixed point overflow exception. (For IBM, it also applies to decimal overflow.) For IA32, that is x86, there is the INTO instruction, which is put after any instruction that could generate overflow, and causes the interrupt if the overflow bit is set. Compilers would have to generate that instruction. It seems, though, that has gone away in x86-64 mode. I don't know that there is any replacement, other than a conditional branch based on the overflow flag. Fortran programmers rely on fixed point overflow, as they have been doing for 60 years, and don't have unsigned. (There are two routines in TeX that Knuth suggests replacing with assembly code. Those do multiply and divide, with 32 bit fixed point values, 16 bits after the binary point. Pascal has no option for avoiding the overflow trap, and it takes a lot of Pascal code to do the multiply and divide!)
Back to comp.compilers | Previous | Next — Previous in thread | Next in thread | Find similar
Re: Are there different programming languages that are compiled to the same intermediate language? Martin Ward <mwardgkc@gmail.com> - 2023-01-31 14:04 +0000
Re: Are there different programming languages that are compiled to the same intermediate language? arnold@freefriends.org (Aharon Robbins) - 2023-02-01 08:07 +0000
Re: Software proofs, was Are there different programming languages that are compiled to the same intermediate language? Spiros Bousbouras <spibou@gmail.com> - 2023-02-05 15:14 +0000
Re: C arithmetic, was Software proofs, was Are there different Keith Thompson <Keith.S.Thompson+u@gmail.com> - 2023-02-05 16:14 -0800
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-06 13:26 -0800
Re: C arithmetic, was Software proofs, was Are there different Hans-Peter Diettrich <DrDiettrich1@netscape.net> - 2023-02-07 14:31 +0100
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-08 01:10 -0800
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-09 00:26 -0800
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-11 00:01 -0800
Re: C arithmetic, was Software proofs, was Are there different drb@ihatespam.msu.edu (Dennis Boone) - 2023-02-12 04:37 +0000
Re: C arithmetic, was Software proofs, was Are there different anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2023-02-08 10:19 +0000
Re: C arithmetic, was Software proofs, was Are there different Hans-Peter Diettrich <DrDiettrich1@netscape.net> - 2023-02-10 19:11 +0100
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-10 23:47 -0800
Re: C arithmetic, was Software proofs, was Are there different anton@mips.complang.tuwien.ac.at (Anton Ertl) - 2023-02-11 22:34 +0000
Re: old floating point, C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-11 22:48 -0800
Re: C arithmetic, was Software proofs, was Are there different Hans-Peter Diettrich <DrDiettrich1@netscape.net> - 2023-02-08 15:24 +0100
Re: C arithmetic, was Software proofs, was Are there different gah4 <gah4@u.washington.edu> - 2023-02-09 00:37 -0800
csiph-web