2011-01-31から1日間の記事一覧

多倍長整数クラス 乗算 作成途中

unsigned int mulhs(unsigned int u, unsigned int v) { unsigned u0, v0, w0; int u1, v1, w1, w2, t; u0 = u & 0xFFFF; u1 = u >> 16; v0 = v & 0xFFFF; v1 = v >> 16; w0 = u0 * v0; t = u1 * v0 + (w0 >> 16); w1 = t & 0xFFFF; w2 = t >> 16; w1 = u0 *…

多倍長整数クラス add / sub 全体

現状の全体のコード ■ヘッダ default.h #pragma once #include <string> #include <iostream> ///////////////////////////////////////////////////////////////////////// // 自作ヘッダをインクルード ///////////////////////////////////////////////////////////////////</iostream></string>…

多倍長整数クラス 乗算 作成途中 [2日目]

すっごいコードになってしまいました。 睡眠不足&混乱気味ながら96bitのMAX値の掛け算は正しかったので、とりあえず・・・ 多分もっと変わるかと思います。 BigUInt& BigUInt::operator*=(const BigUInt& p) { //int i, j; //int m, n; //unsigned long w[6…