Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.lang.c > #68800 > unrolled thread

profesional bignum arithmetic in c, how done?

Started byfir <profesor.fir@gmail.com>
First post2015-09-01 01:22 -0700
Last post2015-10-12 23:49 -0700
Articles 20 on this page of 325 — 29 participants

Back to article view | Back to comp.lang.c


Contents

  profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-01 01:22 -0700
    Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 02:29 -0700
      Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 11:10 +0100
        Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-01 12:40 +0200
          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 12:06 +0100
            Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-01 13:28 +0200
              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 13:07 +0100
                Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-01 14:15 +0200
                Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-01 09:12 -0700
                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-01 12:53 -0700
                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 01:07 -0700
                  Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 02:30 -0700
                    Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 03:11 -0700
                      Re: profesional bignum arithmetic in c, how done? Rosario19 <Ros@invalid.invalid> - 2015-09-27 12:15 +0200
                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 04:58 -0700
                          Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-27 06:01 -0700
                            Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 09:40 -0700
                      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 03:19 -0700
                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-27 15:26 -0700
            Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-01 14:02 +0200
              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 13:43 +0100
                Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-01 16:39 +0200
              Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-02 10:17 +1200
            Re: profesional bignum arithmetic in c, how done? <william@wilbur.25thandClement.com> - 2015-09-01 10:36 -0700
            Re: profesional bignum arithmetic in c, how done? "Chris M. Thomasson" <nospam@nospam.nospam> - 2015-09-01 12:46 -0700
        Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-01 12:49 +0100
          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 05:15 -0700
            Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 05:18 -0700
          Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-01 13:32 +0100
            Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-01 13:45 +0100
              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-01 13:57 +0100
                Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-01 16:35 +0100
              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 06:00 -0700
              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 14:50 +0100
                Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-01 16:40 +0000
                  Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 18:24 +0100
                    Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-01 18:28 +0100
                      Re: profesional bignum arithmetic in c, how done? Noob <root@127.0.0.1> - 2015-09-02 15:22 +0200
                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 09:05 -0700
                        Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-02 17:55 +0100
                        Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 10:20 +0200
                          Re: profesional bignum arithmetic in c, how done? James Kuyper <jameskuyper@verizon.net> - 2015-09-03 08:37 -0400
                            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 15:22 +0100
                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-03 07:52 -0700
                    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 10:29 -0700
                      Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-01 19:45 +0100
                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 12:23 -0700
                    Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-01 11:25 -0700
                    Re: profesional bignum arithmetic in c, how done? <william@wilbur.25thandClement.com> - 2015-09-01 11:34 -0700
                      Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 20:26 +0100
                    Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-01 19:02 +0000
                      Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 20:51 +0100
                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-01 13:04 -0700
                        Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-01 23:11 +0200
                    Re: profesional bignum arithmetic in c, how done? jacobnavia <jacob@jacob.remcomp.fr> - 2015-09-01 21:13 +0200
                    Re: profesional bignum arithmetic in c, how done? jadill33@gmail.com - 2015-09-01 13:34 -0700
                      Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 13:46 -0700
                        Re: profesional bignum arithmetic in c, how done? jadill33@gmail.com - 2015-09-01 14:43 -0700
                          Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 15:13 -0700
                            Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-02 10:24 +1200
                              Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 15:56 -0700
                                Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-02 11:03 +1200
                                  Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-01 16:19 -0700
                                    Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-01 17:01 -0700
                                    Re: profesional bignum arithmetic in c, how done? jacobnavia <jacob@jacob.remcomp.fr> - 2015-09-02 09:40 +0200
                                      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 00:43 -0700
                                        Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-02 08:58 +0100
                                      Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-02 08:49 +0100
                                        Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-02 11:37 +0100
                                          Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-02 11:48 +0100
                                            Re: profesional bignum arithmetic in c, how done? jacobnavia <jacob@jacob.remcomp.fr> - 2015-09-02 15:59 +0200
                                              Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-02 16:09 +0200
                                              Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-02 16:00 +0100
                                                Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-02 08:12 -0700
                                              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-02 17:21 +0100
                                          Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-02 12:54 +0200
                                        Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-06 15:25 -0700
                                          Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-06 17:14 -0700
                                            Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-06 17:16 -0700
                                              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 12:12 +0100
                                                Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-07 04:42 -0700
                                                  Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-07 14:55 +0100
                                                    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-07 07:35 -0700
                                            Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-06 18:19 -0700
                                              Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-06 18:25 -0700
                                                Re: profesional bignum arithmetic in c, how done? jacobnavia <jacob@jacob.remcomp.fr> - 2015-09-07 14:25 +0200
                                                  Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 05:35 -0700
                                                    Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-07 13:49 -0700
                                                  Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 15:00 +0100
                                                    Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 07:24 -0700
                                                    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-07 07:39 -0700
                                                      Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 16:28 +0100
                                                        Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 08:34 -0700
                                                          Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 16:58 +0100
                                                            Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 09:16 -0700
                                                              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 17:18 +0100
                                                              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-07 18:05 +0100
                                                              Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-07 21:31 +0200
                                                                Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 13:19 -0700
                                                                  Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-08 08:56 +0200
                                                      Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-07 18:25 +0200
                                                    Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-07 18:16 +0200
                                                      Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 17:30 +0100
                                                      Re: profesional bignum arithmetic in c, how done? James Kuyper <jameskuyper@verizon.net> - 2015-09-07 12:44 -0400
                                                  Re: profesional bignum arithmetic in c, how done? James Kuyper <jameskuyper@verizon.net> - 2015-09-07 12:17 -0400
                                              Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-07 10:31 +0200
                                            Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-11 10:26 -0700
                                          Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 12:05 +0100
                                            Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-07 04:17 -0700
                                              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-07 12:51 +0100
                                                Re: profesional bignum arithmetic in c, how done? James Kuyper <jameskuyper@verizon.net> - 2015-09-07 12:42 -0400
                                                  Re: profesional bignum arithmetic in c, how done? jacobnavia <jacob@jacob.remcomp.fr> - 2015-09-07 21:07 +0200
                                            Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-22 04:09 -0700
                                      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 02:14 -0700
                                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 02:21 -0700
                                          Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 03:03 -0700
                                            Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-02 11:43 +0100
                                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 08:36 -0700
                                              Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-02 15:58 -0500
                                                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 14:16 -0700
                                                  Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-02 17:11 -0500
                                                    Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-02 23:55 -0700
                                                      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-03 01:22 -0700
                                                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-03 06:01 -0700
                                                      Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 10:29 +0200
                                                Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-03 08:15 +0100
                                                  Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 10:41 +0200
                                                    Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-03 09:53 +0100
                                                      Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 11:46 +0200
                                                        Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-11 12:59 -0700
                                                      Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-03 10:24 -0500
                                                        Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-11 13:22 -0700
                                                      Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-11 12:48 -0700
                                                      Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-11 13:27 -0700
                                              Re: profesional bignum arithmetic in c, how done? Rosario19 <Ros@invalid.invalid> - 2015-09-09 18:37 +0200
                                                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-11 23:02 -0700
                                                  Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-11 23:19 -0700
                                                  Re: profesional bignum arithmetic in c, how done? Rosario19 <Ros@invalid.invalid> - 2015-09-12 11:59 +0200
                                                    Re: profesional bignum arithmetic in c, how done? Rosario19 <Ros@invalid.invalid> - 2015-09-12 12:02 +0200
                                                    Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-12 04:26 -0700
                                                      Re: profesional bignum arithmetic in c, how done? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-12 13:46 +0000
                                                        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-12 07:21 -0700
                                                          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-12 18:04 +0100
                                                            Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-12 10:58 -0700
                                                              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-12 19:21 +0100
                                                                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-12 12:09 -0700
                                                                Re: profesional bignum arithmetic in c, how done? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-13 06:34 +0000
                                                                  Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-13 02:24 -0700
                                                                    Re: profesional bignum arithmetic in c, how done? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-13 21:49 +0000
                                                                  Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-13 10:56 +0100
                                                            Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-12 20:32 +0200
                                                              Re: profesional bignum arithmetic in c, how done? supercat@casperkitty.com - 2015-09-12 11:47 -0700
                                                              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-12 21:17 +0100
                                                                Re: profesional bignum arithmetic in c, how done? bartekltg <bartekltg@gmail.com> - 2015-09-12 22:51 +0200
                                                                  Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-12 16:11 -0700
                                                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-13 05:26 -0700
                                                          Re: profesional bignum arithmetic in c, how done? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-12 18:25 +0000
                                                        Re: profesional bignum arithmetic in c, how done? supercat@casperkitty.com - 2015-09-12 11:34 -0700
                                                          Re: profesional bignum arithmetic in c, how done? Richard Damon <Richard@Damon-Family.org> - 2015-09-12 19:53 -0400
                                                            Re: profesional bignum arithmetic in c, how done? supercat@casperkitty.com - 2015-09-12 18:00 -0700
                                  Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-02 01:04 -0700
                            Re: profesional bignum arithmetic in c, how done? jadill33@gmail.com - 2015-09-02 06:39 -0700
                              Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-02 09:27 -0700
                          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 23:22 +0100
                    Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-01 23:13 +0200
              Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-01 16:46 +0200
          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-01 14:19 +0100
            Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-01 17:20 +0000
          Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 06:51 -0700
        Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-01 09:28 -0700
        Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 01:36 +0100
          Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-03 10:46 +0000
            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 13:46 +0100
              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 05:53 -0700
                Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 15:13 +0200
                  Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 06:23 -0700
                    Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-04 13:15 +0200
                      Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 12:38 +0100
                        Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-04 05:14 -0700
                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 05:30 -0700
                          Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-04 14:46 +0100
                            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 15:04 +0100
                              Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-05 15:32 +0200
                                Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-05 15:02 +0100
                                  Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 07:20 -0700
                                    Re: profesional bignum arithmetic in c, how done? glen herrmannsfeldt <gah@ugcs.caltech.edu> - 2015-09-05 16:57 +0000
                                      Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-06 10:50 +0200
                                Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 15:58 +0100
                                Re: profesional bignum arithmetic in c, how done? James Kuyper <jameskuyper@verizon.net> - 2015-09-05 11:24 -0400
                            Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-04 07:07 -0700
                              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 07:16 -0700
                                Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-05 15:38 +0200
                                  Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 06:48 -0700
                              Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-05 07:48 +1200
                                Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 12:51 -0700
                                  Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-05 11:01 +1200
                                    Re: profesional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-05 02:34 +0200
                                      Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-05 12:49 +1200
                                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 18:55 -0700
                                          Re: profesional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-05 03:56 +0200
                                            Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 19:26 -0700
                                              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 20:58 -0700
                                                Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 21:55 -0700
                                                  Re: profesional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-05 07:19 +0200
                                                    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 22:30 -0700
                                                      Re: profesional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-05 07:35 +0200
                                                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 22:48 -0700
                                                          Re: profesional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-05 07:52 +0200
                                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-06 11:45 -0700
                                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-06 17:58 -0700
                                            Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-06 20:52 -0700
                                              Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-07 16:10 +1200
                                                Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-07 04:09 -0700
                                Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-04 15:03 -0700
                                  Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-05 11:02 +1200
                      Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 05:27 -0700
                        Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-04 15:45 +0200
                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 07:03 -0700
                          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 16:03 +0100
                            Re: profesional bignum arithmetic in c, how done? jadill33@gmail.com - 2015-09-04 08:35 -0700
                              Re: profesional bignum arithmetic in c, how done? gazelle@shell.xmission.com (Kenny McCormack) - 2015-09-04 15:55 +0000
                                Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 17:25 +0100
                                  Re: profesional bignum arithmetic in c, how done? gazelle@shell.xmission.com (Kenny McCormack) - 2015-09-04 16:53 +0000
                                  Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-04 11:59 -0500
                                    Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 18:12 +0100
                                      Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-04 12:35 -0500
                                        Re: professional bignum arithmetic in c, how done? gazelle@shell.xmission.com (Kenny McCormack) - 2015-09-04 17:59 +0000
                                          Re: professional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 11:31 -0700
                                          Re: professional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 20:27 +0100
                                            Re: professional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 12:39 -0700
                                              Re: professional bignum arithmetic in c, how done? Melzzzzz <mel@zzzzz.com> - 2015-09-04 22:13 +0200
                                                Re: professional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 13:30 -0700
                                                Re: professional bignum arithmetic in c, how done? Steve Thompson <stevet810@gmail.com> - 2015-09-04 20:33 +0000
                                                  Re: professional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-04 14:26 -0700
                                        Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 20:14 +0100
                              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 17:11 +0100
                  Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 14:24 +0100
                    Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-04 19:20 -0700
                      Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-05 02:26 -0700
                      Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 11:02 +0100
                        Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-05 03:28 -0700
                          Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-05 23:17 +1200
                            Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-05 15:01 -0700
                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 04:29 -0700
                            Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 04:47 -0700
                              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 05:14 -0700
                            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 13:17 +0100
                              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-05 05:37 -0700
                          Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 05:32 -0700
                            Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-05 09:46 -0500
                              Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-05 16:11 +0100
                                Re: profesional bignum arithmetic in c, how done? Robert Wessel <robertwessel2@yahoo.com> - 2015-09-07 00:07 -0500
                        Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-05 11:39 +0100
                          Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-05 04:24 -0700
                            Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-05 12:32 +0100
                          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 13:30 +0100
                            Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-05 13:43 +0100
                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 05:47 -0700
                        Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-05 05:48 -0700
                          Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 05:56 -0700
                            Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-05 07:38 -0700
                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 10:16 -0700
                                Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 12:09 -0700
                          Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-05 06:00 -0700
                            Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-05 06:15 -0700
                            Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-05 07:12 -0700
                              Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-05 15:05 +0000
                              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 17:32 +0100
                          Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-05 15:44 +0100
                            Re: profesional bignum arithmetic in c, how done? wssimms@gmail.com - 2015-09-05 08:17 -0700
                            Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-05 15:29 -0700
                              Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-05 15:40 -0700
                            Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-13 08:07 -0700
                        Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-05 14:59 -0700
              Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-03 15:48 +0100
              Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-03 16:24 +0000
                Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 09:46 -0700
                  Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-03 18:02 +0100
                  Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-03 11:47 -0700
                    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 11:54 -0700
                      Re: profesional bignum arithmetic in c, how done? David Brown <david.brown@hesbynett.no> - 2015-09-03 22:40 +0200
                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 13:50 -0700
                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 13:54 -0700
                    Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 20:04 +0100
                Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 18:41 +0100
                  Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-03 12:01 -0700
                    Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 20:21 +0100
                      Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 12:28 -0700
                        Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 12:55 -0700
                        Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 20:55 +0100
                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 13:05 -0700
                            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 21:33 +0100
                              Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 13:41 -0700
                                Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-03 22:22 +0100
                                  Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 14:34 -0700
                                    Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-03 23:52 +0100
                                      Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 17:30 -0700
                                        Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-04 12:41 +1200
                                      Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 06:19 -0700
                                        Re: profesional bignum arithmetic in c, how done? Ben Bacarisse <ben.usenet@bsb.me.uk> - 2015-09-04 16:38 +0100
                                          Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-04 08:51 -0700
                                          Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-04 09:50 -0700
                          Re: profesional bignum arithmetic in c, how done? jadill33@gmail.com - 2015-09-03 13:50 -0700
                          Re: profesional bignum arithmetic in c, how done? Keith Thompson <kst-u@mib.org> - 2015-09-03 16:29 -0700
                            Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 01:44 +0100
                      Re: profesional bignum arithmetic in c, how done? Ian Collins <ian-news@hotmail.com> - 2015-09-04 08:50 +1200
            Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 07:14 -0700
              Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-03 15:48 +0100
                Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 09:16 -0700
                  Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-03 09:19 -0700
              Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-03 22:58 +0000
                Re: profesional bignum arithmetic in c, how done? Malcolm McLean <malcolm.mclean5@btinternet.com> - 2015-09-03 17:13 -0700
                  Re: profesional bignum arithmetic in c, how done? jt@toerring.de (Jens Thoms Toerring) - 2015-09-04 01:58 +0000
                    Re: profesional bignum arithmetic in c, how done? Bartc <bc@freeuk.com> - 2015-09-04 11:22 +0100
        Re: profesional bignum arithmetic in c, how done? gordonb.cr5il@burditt.org (Gordon Burditt) - 2015-09-04 21:26 -0500
        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-13 06:12 -0700
      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-01 12:59 -0700
    Re: profesional bignum arithmetic in c, how done? "Rick C. Hodgin" <rick.c.hodgin@gmail.com> - 2015-09-07 05:20 -0700
    Re: profesional bignum arithmetic in c, how done? James Dow Allen <jdallen2000@yahoo.com> - 2015-09-13 03:19 -0700
      Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-09-13 04:11 -0700
      Re: profesional bignum arithmetic in c, how done? Richard Heathfield <rjh@cpax.org.uk> - 2015-09-13 14:06 +0100
      Re: profesional bignum arithmetic in c, how done? Tim Rentsch <txr@alumni.caltech.edu> - 2015-09-26 15:54 -0700
    Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-10-12 00:54 -0700
      Re: profesional bignum arithmetic in c, how done? Rosario19 <Ros@invalid.invalid> - 2015-10-12 19:50 +0200
        Re: profesional bignum arithmetic in c, how done? fir <profesor.fir@gmail.com> - 2015-10-12 23:49 -0700

Page 8 of 17 — ← Prev page 1 … 6 7 [8] 9 10 … 17  Next page →


#70348

Fromglen herrmannsfeldt <gah@ugcs.caltech.edu>
Date2015-09-12 13:46 +0000
Message-ID<mt1ab6$a2g$1@speranza.aioe.org>
In reply to#70332
fir <profesor.fir@gmail.com> wrote:
> W dniu sobota, 12 wrze??nia 2015 11:59:14 UTC+2 u??ytkownik Rosario19 napisa??:

(snip)

>> if i remeber well in the time what i have in the files...
  
>> first write decimal routine for sum, sub, div, mul array of numbers as
>> decimal char digit 
>> example of such numbers the array of char
>> 1,2,3
>> that would be the nuber "321" as string digit
 
(snip) 
> probably i was not yet doin that
 
> some maybe slight problems my appear for example when multiplying 
> unsigned 8 unsigned you need to get 64 bit result
> (speaking on 32 bit os) im not sure how well those biuld in 64 bit 
> types support

Most hardware has a multiply instruction generating a double length
product. Many high-level languages don't have this.

C compilers with (long long) will usually figure out if you cast one
or both operands of multiply to (long long) that you want such,
and not do the three multiplies by zero.

> that.. also division code must be somewhat changed as right now 
> im just doin sub in loop for digits that would be mostly 9 subbs 
> per digit, but for 32-bit unsigned 

Division is easy until the divisor gets too big. As with multiply,
you want a double length dividend which hardware usually supplies.

I recently did a 4000 digit pi calculation on an IBM 360/20
(with 8K core, so I can't do much more). The calculation is 
done in base 1000000000000000, the divide instruction takes
a 31 digit dividend and 15 digit divisor, generating a 15 digit
quotient and 15 digit remainder. Not hard at all to write that.

It does get harder when you need bignum divisor.


-- glen

[toc] | [prev] | [next] | [standalone]


#70350

Fromfir <profesor.fir@gmail.com>
Date2015-09-12 07:21 -0700
Message-ID<21f36531-0090-4384-9957-d8e9b47d4364@googlegroups.com>
In reply to#70348
W dniu sobota, 12 września 2015 15:46:32 UTC+2 użytkownik glen herrmannsfeldt napisał:
> fir <profesor.fir@gmail.com> wrote:
> > W dniu sobota, 12 wrze??nia 2015 11:59:14 UTC+2 u??ytkownik Rosario19 napisa??:
> 
> (snip)
> 
> >> if i remeber well in the time what i have in the files...
>   
> >> first write decimal routine for sum, sub, div, mul array of numbers as
> >> decimal char digit 
> >> example of such numbers the array of char
> >> 1,2,3
> >> that would be the nuber "321" as string digit
>  
> (snip) 
> > probably i was not yet doin that
>  
> > some maybe slight problems my appear for example when multiplying 
> > unsigned 8 unsigned you need to get 64 bit result
> > (speaking on 32 bit os) im not sure how well those biuld in 64 bit 
> > types support
> 
> Most hardware has a multiply instruction generating a double length
> product. Many high-level languages don't have this.
> 
> C compilers with (long long) will usually figure out if you cast one
> or both operands of multiply to (long long) that you want such,
> and not do the three multiplies by zero.
> 
> > that.. also division code must be somewhat changed as right now 
> > im just doin sub in loop for digits that would be mostly 9 subbs 
> > per digit, but for 32-bit unsigned 
> 
> Division is easy until the divisor gets too big. As with multiply,
> you want a double length dividend which hardware usually supplies.
> 
> I recently did a 4000 digit pi calculation on an IBM 360/20
> (with 8K core, so I can't do much more). The calculation is 
> done in base 1000000000000000, the divide instruction takes
> a 31 digit dividend and 15 digit divisor, generating a 15 digit
> quotient and 15 digit remainder. Not hard at all to write that.
> 
> It does get harder when you need bignum divisor.
> 
> 
but how to do it exactly? some hints?

say i got such 32-bit chunk vectors
 
0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290
 /
0038768167 - 3276287672 - 1665265628
 
what i need to divide by what?

[toc] | [prev] | [next] | [standalone]


#70358

FromBartc <bc@freeuk.com>
Date2015-09-12 18:04 +0100
Message-ID<mt1lrb$4fp$1@dont-email.me>
In reply to#70350
On 12/09/2015 15:21, fir wrote:

>> It does get harder when you need bignum divisor.
>>
>>
> but how to do it exactly? some hints?
>
> say i got such 32-bit chunk vectors
>
> 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290
>   /
> 0038768167 - 3276287672 - 1665265628
>
> what i need to divide by what?

Are the most significant chunks first? Then just label them like this:

  (B5 B4 B3 B2 B1 B0) / (A2 A1 A0)

Each Bi or Ai is a chunk or digit. It could correspond to:

  348978 / 651

Where B5 is, B3 is 4 and so on. The logic is the same (but I'm not going 
do it for you; it does my head in and I've already done by fair share).

It works a bit like school long-division:

           __________________
  A2 A1 A0 |B5 B4 B3 B2 B1 B0

Here, with A being 3 'digits', you clearly start by seeing how many 
times it goes into the first 3 digits of B (B5 B4 B3). Take care however 
because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it 
simple by just repeatedly subtracting A210 from B543 because it could 
take a long time!


-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#70361

Fromfir <profesor.fir@gmail.com>
Date2015-09-12 10:58 -0700
Message-ID<643ce701-17a6-4c74-a032-f751f5fb964e@googlegroups.com>
In reply to#70358
W dniu sobota, 12 września 2015 19:04:42 UTC+2 użytkownik Bart napisał:
> On 12/09/2015 15:21, fir wrote:
> 
> >> It does get harder when you need bignum divisor.
> >>
> >>
> > but how to do it exactly? some hints?
> >
> > say i got such 32-bit chunk vectors
> >
> > 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290
> >   /
> > 0038768167 - 3276287672 - 1665265628
> >
> > what i need to divide by what?
> 
> Are the most significant chunks first? Then just label them like this:
> 
>   (B5 B4 B3 B2 B1 B0) / (A2 A1 A0)
> 
> Each Bi or Ai is a chunk or digit. It could correspond to:
> 
>   348978 / 651
> 
> Where B5 is, B3 is 4 and so on. The logic is the same (but I'm not going 
> do it for you; it does my head in and I've already done by fair share).
> 
> It works a bit like school long-division:
> 
>            __________________
>   A2 A1 A0 |B5 B4 B3 B2 B1 B0
> 
> Here, with A being 3 'digits', you clearly start by seeing how many 
> times it goes into the first 3 digits of B (B5 B4 B3). Take care however 
> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it 
> simple by just repeatedly subtracting A210 from B543 because it could 
> take a long time!
> 
> 
 i forgot the paper division a bit 

if dividing
   348978 / 651
do i div 34/6 ?
it would be 5, then i sub 5*651 ?

will it be arrorous or will it be wrrorless going this way?

[toc] | [prev] | [next] | [standalone]


#70364

FromBartc <bc@freeuk.com>
Date2015-09-12 19:21 +0100
Message-ID<mt1qc1$m1h$1@dont-email.me>
In reply to#70361
On 12/09/2015 18:58, fir wrote:
> W dniu sobota, 12 września 2015 19:04:42 UTC+2 użytkownik Bart napisał:

>> It works a bit like school long-division:
>>
>>             __________________
>>    A2 A1 A0 |B5 B4 B3 B2 B1 B0
>>
>> Here, with A being 3 'digits', you clearly start by seeing how many
>> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
>> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
>> simple by just repeatedly subtracting A210 from B543 because it could
>> take a long time!
>>
>>
>   i forgot the paper division a bit
>
> if dividing
>     348978 / 651
> do i div 34/6 ?
> it would be 5, then i sub 5*651 ?

You would start with 3/651, which gives 0 then you go on to 34/651 then 
348/651 then 3489/651. On paper, you get to this last bit instantly just 
by looking (although it doesn't work then the numbers get /very/ long).

A computer algorithm can do the same: if the A has N digits, you start 
looking at the left-most N digits of B (if B has less than N, the answer 
is 0).

3489/651 goes 5 times (the first significant digit) with 234 over.

Now the next part is 2347/651 (3 times, with 394 over), then 3948/651 
(6, with remainder discarded). The result then is 536.

So the principle works. But doing it with digits that go from 0 to 
4294967295 instead of 0 to 9 is trickier. (My main library uses decimal 
digits of 0 to 999999, within a 32-bit int; it makes printing out 
results very easy.)

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#70373

Fromfir <profesor.fir@gmail.com>
Date2015-09-12 12:09 -0700
Message-ID<f45d1c1a-b356-4eb8-9df0-3e2c77c0a879@googlegroups.com>
In reply to#70364
W dniu sobota, 12 września 2015 20:21:48 UTC+2 użytkownik Bart napisał:
> On 12/09/2015 18:58, fir wrote:
> > W dniu sobota, 12 września 2015 19:04:42 UTC+2 użytkownik Bart napisał:
> 
> >> It works a bit like school long-division:
> >>
> >>             __________________
> >>    A2 A1 A0 |B5 B4 B3 B2 B1 B0
> >>
> >> Here, with A being 3 'digits', you clearly start by seeing how many
> >> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
> >> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
> >> simple by just repeatedly subtracting A210 from B543 because it could
> >> take a long time!
> >>
> >>
> >   i forgot the paper division a bit
> >
> > if dividing
> >     348978 / 651
> > do i div 34/6 ?
> > it would be 5, then i sub 5*651 ?
> 
> You would start with 3/651, which gives 0 then you go on to 34/651 then 
> 348/651 then 3489/651. On paper, you get to this last bit instantly just 
> by looking (although it doesn't work then the numbers get /very/ long).
> 
> A computer algorithm can do the same: if the A has N digits, you start 
> looking at the left-most N digits of B (if B has less than N, the answer 
> is 0).
> 
> 3489/651 goes 5 times (the first significant digit) with 234 over.
> 
> Now the next part is 2347/651 (3 times, with 394 over), then 3948/651 
> (6, with remainder discarded). The result then is 536.
> 
> So the principle works. But doing it with digits that go from 0 to 
> 4294967295 instead of 0 to 9 is trickier. (My main library uses decimal 
> digits of 0 to 999999, within a 32-bit int; it makes printing out 
> results very easy.)
> 
but haw you damn divide by 
0038768167 - 3276287672 - 1665265628 
at once when you want to divide by all
651 

i really dont remember the paper divisioon, but it seem sto me that you need the division method to div only by
0038768167  (6 in ilustration case)

[toc] | [prev] | [next] | [standalone]


#70397

Fromglen herrmannsfeldt <gah@ugcs.caltech.edu>
Date2015-09-13 06:34 +0000
Message-ID<mt35ct$50m$1@speranza.aioe.org>
In reply to#70364
Bartc <bc@freeuk.com> wrote:
> On 12/09/2015 18:58, fir wrote:

(snip)
>> if dividing
>>     348978 / 651
>> do i div 34/6 ?
>> it would be 5, then i sub 5*651 ?
 
> You would start with 3/651, which gives 0 then you go on to 34/651 then 
> 348/651 then 3489/651. On paper, you get to this last bit instantly just 
> by looking (although it doesn't work then the numbers get /very/ long).

More specifically, 0 remainder 3, 0 remainder 34, and 0 remainder 384.
 
> A computer algorithm can do the same: if the A has N digits, you start 
> looking at the left-most N digits of B (if B has less than N, the answer 
> is 0).

I suppose, but I just let the divide instruction do it.
 
> 3489/651 goes 5 times (the first significant digit) with 234 over.
 
> Now the next part is 2347/651 (3 times, with 394 over), then 3948/651 
> (6, with remainder discarded). The result then is 536.
 
> So the principle works. But doing it with digits that go from 0 to 
> 4294967295 instead of 0 to 9 is trickier. (My main library uses decimal 
> digits of 0 to 999999, within a 32-bit int; it makes printing out 
> results very easy.)

You need the dividend to be at least the base (4294967296) 
times the maximum value of the remainder, where the latter is
one less than the largest divisor. Or, the other way around, the
largest dividend determines the largest divisor you can have before
going to the general (bignum divisor) case. 

There are some pi formulae that use larger divisors, and run just
slightly faster. 


-- glen

[toc] | [prev] | [next] | [standalone]


#70403

Fromfir <profesor.fir@gmail.com>
Date2015-09-13 02:24 -0700
Message-ID<6fd42939-64e4-4e79-9127-4df952d8167b@googlegroups.com>
In reply to#70397
W dniu niedziela, 13 września 2015 08:34:12 UTC+2 użytkownik glen > 
> You need the dividend to be at least the base (4294967296) 
> times the maximum value of the remainder, where the latter is
> one less than the largest divisor. Or, the other way around, the
> largest dividend determines the largest divisor you can have before
> going to the general (bignum divisor) case. 
> 
im not sure if i understood it, so 
lets back to specyfic problem

0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290 
 / 
0038768167 - 3276287672 - 1665265628 

C= A/B

this is 6 digit number div by 3 digit number, probably the output will be five digit (?) [or am i wrong? im probably wrong - B vector will be shifted once rigt

 543210 

 AAAAAA
  BBB00

but the resulting C digit will be at [2]
]

what div to do to count those first most significant digit of the output?

[toc] | [prev] | [next] | [standalone]


#70432

Fromglen herrmannsfeldt <gah@ugcs.caltech.edu>
Date2015-09-13 21:49 +0000
Message-ID<mt4r0f$3pb$1@speranza.aioe.org>
In reply to#70403
fir <profesor.fir@gmail.com> wrote:

(snip)

> 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290 
> / 
> 0038768167 - 3276287672 - 1665265628 

The one that I have been considering is dividing a bignum by a not
so big number. This happens fairly often, for example computing e
or pi to a fairly large number of digits. 

To compute e, you sum 1/n! for increasing n, where each term is
generated by dividing the previous one by n. As long as n is less
than 2**32, (2**31 if you have only signed divide), you are dividing
by non-bignum. That happens as long as (2**31)! has more digits
than the number of digits you are trying to compute.

Start with the bignum

  1 - 0 - 0 - 0 - 0 ...

successively divide by n, and sum each term into an accumulator.
When the term in the sum goes to zero, you are done.

computing 16*atan(1/5) + 4*atan(1/239) requires lots of dividing
by 25 and by 239*239, and also dividing by n, not at all hard for
millions of digits. 

-- glen

[toc] | [prev] | [next] | [standalone]


#70405

FromBartc <bc@freeuk.com>
Date2015-09-13 10:56 +0100
Message-ID<mt3h5d$ovg$1@dont-email.me>
In reply to#70397
On 13/09/2015 07:34, glen herrmannsfeldt wrote:
> Bartc <bc@freeuk.com> wrote:
>> On 12/09/2015 18:58, fir wrote:
>
> (snip)
>>> if dividing
>>>      348978 / 651
>>> do i div 34/6 ?
>>> it would be 5, then i sub 5*651 ?
>
>> You would start with 3/651, which gives 0 then you go on to 34/651 then
>> 348/651 then 3489/651. On paper, you get to this last bit instantly just
>> by looking (although it doesn't work then the numbers get /very/ long).
>
> More specifically, 0 remainder 3, 0 remainder 34, and 0 remainder 384.
>
>> A computer algorithm can do the same: if the A has N digits, you start
>> looking at the left-most N digits of B (if B has less than N, the answer
>> is 0).
>
> I suppose, but I just let the divide instruction do it.

We're talking about a 'digit' that can be anything, including being any 
number of decimal digits represented by a string.

In the OP's context, a digit is an unsigned 32-bit word. A machine 
divide instruction (on typical hardware) wouldn't directly be able to 
deal with dividing values N words long. (I would use it to calculate 
approximates involving the first one or two digits.)

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#70369

Frombartekltg <bartekltg@gmail.com>
Date2015-09-12 20:32 +0200
Message-ID<mt1r3l$rb4$1@node2.news.atman.pl>
In reply to#70358
On 12.09.2015 19:04, Bartc wrote:
> On 12/09/2015 15:21, fir wrote:
>
>>> It does get harder when you need bignum divisor.
>>>
>>>
>> but how to do it exactly? some hints?
>>
>> say i got such 32-bit chunk vectors
>>
>> 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 -
>> 2231712290
>>   /
>> 0038768167 - 3276287672 - 1665265628
>>
>> what i need to divide by what?
>
> Are the most significant chunks first? Then just label them like this:
>
>   (B5 B4 B3 B2 B1 B0) / (A2 A1 A0)
>
> Each Bi or Ai is a chunk or digit. It could correspond to:
>
>   348978 / 651
>
> Where B5 is, B3 is 4 and so on. The logic is the same (but I'm not going
> do it for you; it does my head in and I've already done by fair share).
>
> It works a bit like school long-division:
>
>            __________________
>   A2 A1 A0 |B5 B4 B3 B2 B1 B0
>
> Here, with A being 3 'digits', you clearly start by seeing how many
> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
> simple by just repeatedly subtracting A210 from B543 because it could
> take a long time!

Some libraries try to do it a bit simpler.


 From boost/multiprecision/cpp_int/divide.hpp
(this is c++, but the description is universal)

" Very simple, fairly braindead long division.
     Start by setting the remainder equal to x, and the
     result equal to 0.  Then in each loop we calculate our
     "best guess" for how many times y divides into r,
     add our guess to the result, and subtract guess*y
     from the remainder r.  One wrinkle is that the remainder
     may go negative, in which case we subtract the current guess
     from the result rather than adding.  The value of the guess
     is determined by dividing the most-significant-limb of the
     current remainder by the most-significant-limb of y.

     Note that there are more efficient algorithms than this
     available, in particular see Knuth Vol 2.  However for small
     numbers of limbs this generally outperforms the alternatives
     and avoids the normalisation step which would require extra storage."

I would prefer something like guess =  A2 A1 / B5


bartekltg

[toc] | [prev] | [next] | [standalone]


#70371

Fromsupercat@casperkitty.com
Date2015-09-12 11:47 -0700
Message-ID<d0f2f170-72dd-473a-9994-58492f626b7b@googlegroups.com>
In reply to#70369
A nice optimization for division on machines where the optimal size of multiply
is e.g. 32x32->64, is to find a 32-bit value by which the divisor be multiplied
so as to yield a divisor of the form 1000...000xxx [32 zeroes after the one].
If the divisor is shifted left so that the most significant word is 1 and the
second is zero, and the dividend is multiplied and shifted the same way as the
divisor, then a good guess for each word of the quotient will the the most
significant word of the residual (dividend minus the product of the divisor and
partial result); each correct word of quotient will either be that value or that
value minus one.

This approach for division will be time O(N^2), while it's possible to code
division using an iterated approximation approach in a linear multiple of the
time required for multiplication.  On the other hand, in many cases, the best
algorithms for multiplication only pay off for really large numbers, and so
there is a range of sizes for which the approach stated above will work very
nicely.

[toc] | [prev] | [next] | [standalone]


#70380

FromBartc <bc@freeuk.com>
Date2015-09-12 21:17 +0100
Message-ID<mt215c$g3c$1@dont-email.me>
In reply to#70369
On 12/09/2015 19:32, bartekltg wrote:
> On 12.09.2015 19:04, Bartc wrote:

>> It works a bit like school long-division:
>>
>>            __________________
>>   A2 A1 A0 |B5 B4 B3 B2 B1 B0
>>
>> Here, with A being 3 'digits', you clearly start by seeing how many
>> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
>> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
>> simple by just repeatedly subtracting A210 from B543 because it could
>> take a long time!
>
> Some libraries try to do it a bit simpler.
>
>
>  From boost/multiprecision/cpp_int/divide.hpp
> (this is c++, but the description is universal)
>
> " Very simple, fairly braindead long division.
>      Start by setting the remainder equal to x, and the
>      result equal to 0.  Then in each loop we calculate our
>      "best guess" for how many times y divides into r,
>      add our guess to the result, and subtract guess*y
>      from the remainder r.  One wrinkle is that the remainder
>      may go negative, in which case we subtract the current guess
>      from the result rather than adding.  The value of the guess
>      is determined by dividing the most-significant-limb of the
>      current remainder by the most-significant-limb of y.
>
>      Note that there are more efficient algorithms than this
>      available, in particular see Knuth Vol 2.  However for small
>      numbers of limbs this generally outperforms the alternatives
>      and avoids the normalisation step which would require extra storage."
>
> I would prefer something like guess =  A2 A1 / B5

You mean, (B5 B4) / A2?

I've been looking at my code, but the comments are unfortunately too 
sparse, and out of date. But it does seem to use this approximation when 
B is longer.

(When A and B are the same length, it's a little different. It's easy to 
test when whether B<A (result 0) or B=A (result 1), otherwise the 
approximation can be B5/A2.)

-- 
Bartc

[toc] | [prev] | [next] | [standalone]


#70383

Frombartekltg <bartekltg@gmail.com>
Date2015-09-12 22:51 +0200
Message-ID<mt237v$3sa$1@node2.news.atman.pl>
In reply to#70380
On 12.09.2015 22:17, Bartc wrote:
> On 12/09/2015 19:32, bartekltg wrote:
>> On 12.09.2015 19:04, Bartc wrote:
>
>>> It works a bit like school long-division:
>>>
>>>            __________________
>>>   A2 A1 A0 |B5 B4 B3 B2 B1 B0
>>>
>>> Here, with A being 3 'digits', you clearly start by seeing how many
>>> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
>>> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
>>> simple by just repeatedly subtracting A210 from B543 because it could
>>> take a long time!
>>
>> Some libraries try to do it a bit simpler.
>>
>>
>>  From boost/multiprecision/cpp_int/divide.hpp
>> (this is c++, but the description is universal)
>>
>> " Very simple, fairly braindead long division.
>>      Start by setting the remainder equal to x, and the
>>      result equal to 0.  Then in each loop we calculate our
>>      "best guess" for how many times y divides into r,
>>      add our guess to the result, and subtract guess*y
>>      from the remainder r.  One wrinkle is that the remainder
>>      may go negative, in which case we subtract the current guess
>>      from the result rather than adding.  The value of the guess
>>      is determined by dividing the most-significant-limb of the
>>      current remainder by the most-significant-limb of y.
>>
>>      Note that there are more efficient algorithms than this
>>      available, in particular see Knuth Vol 2.  However for small
>>      numbers of limbs this generally outperforms the alternatives
>>      and avoids the normalisation step which would require extra
>> storage."
>>
>> I would prefer something like guess =  A2 A1 / B5
>
> You mean, (B5 B4) / A2?

Yes.
The long division in my schools was written as

_________________
B5 B4 B3 B2 B1 B0 :  A2 A1 A0

It swapped in my head:)


> I've been looking at my code, but the comments are unfortunately too
> sparse, and out of date. But it does seem to use this approximation when
> B is longer.

> (When A and B are the same length, it's a little different. It's easy to
> test when whether B<A (result 0) or B=A (result 1), otherwise the
> approximation can be B5/A2.)

Supercat and bert (in a new thread ) pointed out that a good idea may
be to composite artificial, fully filled, limb.

Fir will test all this ideas and give us report, which one work best;)

bartekltg


[toc] | [prev] | [next] | [standalone]


#70391

Fromfir <profesor.fir@gmail.com>
Date2015-09-12 16:11 -0700
Message-ID<d80aa6b9-740b-4dc9-8619-a141b1923703@googlegroups.com>
In reply to#70383
W dniu sobota, 12 września 2015 22:51:25 UTC+2 użytkownik bartekltg napisał:
> On 12.09.2015 22:17, Bartc wrote:
> > On 12/09/2015 19:32, bartekltg wrote:
> >> On 12.09.2015 19:04, Bartc wrote:
> >
> >>> It works a bit like school long-division:
> >>>
> >>>            __________________
> >>>   A2 A1 A0 |B5 B4 B3 B2 B1 B0
> >>>
> >>> Here, with A being 3 'digits', you clearly start by seeing how many
> >>> times it goes into the first 3 digits of B (B5 B4 B3). Take care however
> >>> because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
> >>> simple by just repeatedly subtracting A210 from B543 because it could
> >>> take a long time!
> >>
> >> Some libraries try to do it a bit simpler.
> >>
> >>
> >>  From boost/multiprecision/cpp_int/divide.hpp
> >> (this is c++, but the description is universal)
> >>
> >> " Very simple, fairly braindead long division.
> >>      Start by setting the remainder equal to x, and the
> >>      result equal to 0.  Then in each loop we calculate our
> >>      "best guess" for how many times y divides into r,
> >>      add our guess to the result, and subtract guess*y
> >>      from the remainder r.  One wrinkle is that the remainder
> >>      may go negative, in which case we subtract the current guess
> >>      from the result rather than adding.  The value of the guess
> >>      is determined by dividing the most-significant-limb of the
> >>      current remainder by the most-significant-limb of y.
> >>
> >>      Note that there are more efficient algorithms than this
> >>      available, in particular see Knuth Vol 2.  However for small
> >>      numbers of limbs this generally outperforms the alternatives
> >>      and avoids the normalisation step which would require extra
> >> storage."
> >>
> >> I would prefer something like guess =  A2 A1 / B5
> >
> > You mean, (B5 B4) / A2?
> 
> Yes.
> The long division in my schools was written as
> 
> _________________
> B5 B4 B3 B2 B1 B0 :  A2 A1 A0
> 
> It swapped in my head:)
> 
> 
> > I've been looking at my code, but the comments are unfortunately too
> > sparse, and out of date. But it does seem to use this approximation when
> > B is longer.
> 
> > (When A and B are the same length, it's a little different. It's easy to
> > test when whether B<A (result 0) or B=A (result 1), otherwise the
> > approximation can be B5/A2.)
> 
> Supercat and bert (in a new thread ) pointed out that a good idea may
> be to composite artificial, fully filled, limb.
> 
> Fir will test all this ideas and give us report, which one work best;)
> 
project your stupidity more - bullshitter
(such a plastic-sick 'narrations' i never seen here yet so youre make a sick precedence, ask for forgiveness )

[toc] | [prev] | [next] | [standalone]


#70409

Fromfir <profesor.fir@gmail.com>
Date2015-09-13 05:26 -0700
Message-ID<a667becb-f0b5-40fc-a801-167368e4eb89@googlegroups.com>
In reply to#70369
W dniu sobota, 12 września 2015 20:32:30 UTC+2 użytkownik bartekltg napisał:
> On 12.09.2015 19:04, Bartc wrote:
> > On 12/09/2015 15:21, fir wrote:
> >
> >>> It does get harder when you need bignum divisor.
> >>>
> >>>
> >> but how to do it exactly? some hints?
> >>
> >> say i got such 32-bit chunk vectors
> >>
> >> 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 -
> >> 2231712290
> >>   /
> >> 0038768167 - 3276287672 - 1665265628
> >>
> >> what i need to divide by what?
> >
> > Are the most significant chunks first? Then just label them like this:
> >
> >   (B5 B4 B3 B2 B1 B0) / (A2 A1 A0)
> >
> > Each Bi or Ai is a chunk or digit. It could correspond to:
> >
> >   348978 / 651
> >
> > Where B5 is, B3 is 4 and so on. The logic is the same (but I'm not going
> > do it for you; it does my head in and I've already done by fair share).
> >
> > It works a bit like school long-division:
> >
> >            __________________
> >   A2 A1 A0 |B5 B4 B3 B2 B1 B0
> >
> > Here, with A being 3 'digits', you clearly start by seeing how many
> > times it goes into the first 3 digits of B (B5 B4 B3). Take care however
> > because the result will be 0 to 2**32-1, not 0 to 9; you can't keep it
> > simple by just repeatedly subtracting A210 from B543 because it could
> > take a long time!
> 
> Some libraries try to do it a bit simpler.
> 
> 
>  From boost/multiprecision/cpp_int/divide.hpp
> (this is c++, but the description is universal)
> 
> " Very simple, fairly braindead long division.
>      Start by setting the remainder equal to x, and the
>      result equal to 0.  Then in each loop we calculate our
>      "best guess" for how many times y divides into r,
>      add our guess to the result, and subtract guess*y
>      from the remainder r.  One wrinkle is that the remainder
>      may go negative, in which case we subtract the current guess
>      from the result rather than adding.  The value of the guess
>      is determined by dividing the most-significant-limb of the
>      current remainder by the most-significant-limb of y.
> 
>      Note that there are more efficient algorithms than this
>      available, in particular see Knuth Vol 2.  However for small
>      numbers of limbs this generally outperforms the alternatives
>      and avoids the normalisation step which would require extra storage."
> 
> I would prefer something like guess =  A2 A1 / B5
> 
guess sound a bit lame, also to do the guess one need to do 64b/32b div, also if
this guess recipe is at all ok as i said 
if "B5" is small the unaccuracy may be 
probabbly high

this is not much hard problem to say how to write it though it is sorta 'low lewel coding' (I also dont need to do it , im askin a bit in advance )

[toc] | [prev] | [next] | [standalone]


#70365

Fromglen herrmannsfeldt <gah@ugcs.caltech.edu>
Date2015-09-12 18:25 +0000
Message-ID<mt1qmm$ibd$1@speranza.aioe.org>
In reply to#70350
fir <profesor.fir@gmail.com> wrote:

(snip, I wrote)
>> Most hardware has a multiply instruction generating a double length
>> product. Many high-level languages don't have this.
 
>> C compilers with (long long) will usually figure out if you cast one
>> or both operands of multiply to (long long) that you want such,
>> and not do the three multiplies by zero.
 
(snip)

>> Division is easy until the divisor gets too big. As with multiply,
>> you want a double length dividend which hardware usually supplies.
 
(snip)

>> It does get harder when you need bignum divisor.
 
> but how to do it exactly? some hints?

Do addition right to left, after each add store the appropriately
wrapped sum into the result, and keep the carry to add to the next
one.

Divide is left to right, dividing by a divisor that isn't bigger
than the base, so 32 bits in your case.
 
> say i got such 32-bit chunk vectors
 
> 0008768376 - 1653656387 - 0437673667 - 0123767614 - 1039873878 - 2231712290
> /
> 0038768167 - 3276287672 - 1665265628
 
> what i need to divide by what?

You might want to divide by 25. Divide the leftmost by 25, store the
quotient in the corresponding position, or overwrite the input.
Take the remainder, shift left (or multiply by the base) add the
next chunk, and repeat. This works as long as the dividend can
be the chunk size plus the divisor (remainder) size. 

-- glen

[toc] | [prev] | [next] | [standalone]


#70370

Fromsupercat@casperkitty.com
Date2015-09-12 11:34 -0700
Message-ID<19318465-abbe-4845-8fbf-40ef79b768da@googlegroups.com>
In reply to#70348
On Saturday, September 12, 2015 at 8:46:32 AM UTC-5, glen herrmannsfeldt wrote:
> Most hardware has a multiply instruction generating a double length
> product. Many high-level languages don't have this.
> 
> Division is easy until the divisor gets too big. As with multiply,
> you want a double length dividend which hardware usually supplies.

I wonder why so few programming languages have any "natural" way of specifying
things like 32x32->64 multiplies or 64/32->32r32 division [with the latter
yielding both quotient and remainder in one step], nor a built-in function
or intrinsic yielding an arithmetically-correct (a*b+c)/d in cases where the
result would fit in the destination type.

On a related note, I've long wondered why hardware vendors never supply a
multiply operation which would compute (H:L)=H+X*L for some combination of
operands.  Performing the addition as part of the multiplication would be
cheap, and if e.g. x86 included a "MULA" which performed EDX:EAX=EDX+EAX*op
would make it possible to efficiently multiply an arbitrary-sized number
stored in memory by a 32-bit value and add the result to another arbitrary-
sized number with code like:

    MOV  ECX,ChunksOfSize16
    XOR  EDX,EDX
    MOV  EBX,smallFactor

    MOV  EAX,[ESI]       ; Lowest word of larger factor
    MUL  EBX
    ADD  [EDI],EAX       ; Lowest word of result

    MOV  EAX,[ESI+4]     ; 2nd word of larger factor
    MULA EBX
    ADC  [EDI+4],EAX     ; 2nd word of result

    MOV  EAX,[ESI+8]     ; 3rd word of larger factor
    MULA EBX
    ADC  [EDI+8],EAX     ; 4th word of result

    MOV  EAX,[ESI+12]    ; 4th word of larger factor
    MULA EBX
    ADC  [EDI+12],EAX    ; 4th word of result

etc. quickly and efficiently.  Since many big-number operations entail as one
of the consituent steps multiplying a large value by a register-sized value
and adding/subtracting the result to/from a large value, an operation defined
as described would seem quite useful for that purpose.

The cost of adding in the old EDX value would be fairly minimal for many ways
of implementing a multiplication.  In an iterative-shift multiply as found on
smaller processors, it would merely entail leaving the upper half of the
result register alone between multiply steps, and in a Wallace Tree multiplier
the extra additions would be off the critical path.

[toc] | [prev] | [next] | [standalone]


#70393

FromRichard Damon <Richard@Damon-Family.org>
Date2015-09-12 19:53 -0400
Message-ID<dW2Jx.25583$MX1.4160@fx30.iad>
In reply to#70370
On 9/12/15 2:34 PM, supercat@casperkitty.com wrote:

> On a related note, I've long wondered why hardware vendors never supply a
> multiply operation which would compute (H:L)=H+X*L for some combination of
> operands.  Performing the addition as part of the multiplication would be
> cheap, and if e.g. x86 included a "MULA" which performed EDX:EAX=EDX+EAX*op
> would make it possible to efficiently multiply an arbitrary-sized number
> stored in memory by a 32-bit value and add the result to another arbitrary-
> sized number with code like:
>

A Common instruction on DSPs is MAC, for Multiply and ACcumulate.

This computes ACC = ACC + X * Y

Typically X and Y are 16 bits, their product 32 bits and ACC is 40-48 bits.

[toc] | [prev] | [next] | [standalone]


#70394

Fromsupercat@casperkitty.com
Date2015-09-12 18:00 -0700
Message-ID<e2c889b8-22b5-45d6-8c08-2436f2fc2a3f@googlegroups.com>
In reply to#70393
On Saturday, September 12, 2015 at 6:53:57 PM UTC-5, Richard Damon wrote:
> A Common instruction on DSPs is MAC, for Multiply and ACcumulate.
> 
> This computes ACC = ACC + X * Y
> 
> Typically X and Y are 16 bits, their product 32 bits and ACC is 40-48 bits.

Using multiply-accumulate efficiently for extended-precision math requires a
means of storing the lowest chunk of the result and shifting the accumulator's
value down by a chunk.  A DSP which had 40-bit accumulator and a means of
storing the value in the bottom of the accumulator and shifting it down by
a word could do extended-precision math quite effectively, but something like
the multiply-accumulate on the ARM would, from what I can tell, require
wasting an instruction on each step to clear the register used for the upper
half of the accumulator after each step unless there's some trick I don't
know about.

[toc] | [prev] | [next] | [standalone]


Page 8 of 17 — ← Prev page 1 … 6 7 [8] 9 10 … 17  Next page →

Back to top | Article view | comp.lang.c


csiph-web