Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!utgpu!water!watnot!watmath!clyde!cbatt!cbosgd!ulysses!ucbvax!CERNVM.BITNET!JCV From: JCV@CERNVM.BITNET.UUCP Newsgroups: mod.computers.vax Subject: Re: Multiple precision arithmetic in FORTRAN Message-ID: <8704040537.AA10195@ucbvax.Berkeley.EDU> Date: Sat, 4-Apr-87 00:37:54 EST Article-I.D.: ucbvax.8704040537.AA10195 Posted: Sat Apr 4 00:37:54 1987 Date-Received: Sun, 5-Apr-87 08:42:27 EST Sender: daemon@ucbvax.BERKELEY.EDU Distribution: world Organization: The ARPA Internet Lines: 12 Approved: info-vax@sri-kl.arpa Use the library routines LIB$ADDX and LIB$SUBX, respectively, to do the job. They use the machine instructions ADDWC and SUBWC (add/subtract with carry) on arrays of longwords, whose size can be specified in the call. See, e.g., HELP RTL LIB$ LIB$ADDX for more information. For comparison of the two values, you'll probably have to write a three line FORTRAN routine that does the compare by comparing individual elements of the array. For bit setting/testing, use the FORTRAN built-ins IBSET/BTEST. See HELP FORTRAN BUILT-IN ... -- Jan