情報数学1 第3-3章 多進法での四則演算 香川大学工学部 富永浩之 [email protected] 概 要 ■ 加法と減法 加法表と減法表、加法筆算、減法筆算、補数による減算 ■ 乗法と除法 乗法表、乗法筆算、除法筆算、多倍長整数の加算と乗算 ■ 多進法の応用 多進数相互の変換、フランス乗算法 ■ 実数の記数法 実数の多進表記と変換算法、算術的表記と理科的表記、 有効数字と有効桁数、理科的表記における四則演算 計算機における実数の内部表現 第01節 [1] 加法表と減法表 7進法の加法表(↑は繰上り) 7進法の減法表(↓は繰下り) + 0 1 2 3 4 5 6 - 0 1 2 3 4 5 6 0 0 1 2 3 4 5 6 0 0 ↓6 ↓5 ↓4 ↓3 ↓2 ↓1 1 1 2 3 4 5 6 ↑0 1 1 0 ↓6 ↓5 ↓4 ↓3 ↓2 2 2 3 4 5 6 ↑0 ↑1 2 2 1 0 ↓6 ↓5 ↓4 ↓3 3 3 4 5 6 ↑0 ↑1 ↑2 3 3 2 1 0 ↓6 ↓5 ↓4 4 4 5 6 ↑0 ↑1 ↑2 ↑3 4 4 3 2 1 0 ↓6 ↓5 5 5 6 ↑0 ↑1 ↑2 ↑3 ↑4 5 5 4 3 2 1 0 ↓6 6 6 ↑0 ↑1 ↑2 ↑3 ↑4 ↑5 6 6 5 4 3 2 1 0 主対角線に関して対称 副対角線に関して対称 ・ 加法表と減法表は、加減算の筆算の各桁の計算結果を表す ・ 2+6=11, 2-6=-4 ではなく、2+6=↑1, 2-6=↓3 と、繰上りと繰下りを記述 ・ 加法表と減法表は、互いに逆の関係 ・ 繰上りと繰下りを無視すると、合同式の加法表・減法表と一致 第01節 [1] 多進法での加法と減法 多進法での加減算は、下位桁からの筆算の形で行う。 加法表および減法表に基づき、各桁同士の計算結果を 繰上り・繰下りも含めて明記し、上位桁で清算する。 3 4 1 4 被加数 + ↑ 2 6 5 加数 1 1 1 繰上り 3 4 1 4 被減数 + 2 6 5 減数 ↓ 1 1 4 0 1 2 和 繰下り 3 1 1 6 差 最上位桁で繰上り・繰下りが発生したときは、 固定桁で非負の多進数としては、桁溢れになる。 3 4 1 4 被加数 + 3 2 6 5 加数 ↑ 1 1 1 1 繰上り ↑ 0 0 1 2 和 2 2 1 4 被減数 + 2 3 6 5 減数 ↓ 1 1 1 1 繰下り ↓ 6 5 1 6 差 第03節 [1] 多進法の乗法表 7進法の乗法表 6進法の乗法表 × 0 1 2 3 4 5 6 × 0 1 2 3 4 5 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 2 3 4 5 6 1 0 1 2 3 4 5 2 0 2 4 6 11 13 15 2 0 2 4 10 12 14 3 0 3 6 12 15 21 24 3 0 3 10 13 20 23 4 0 4 11 15 22 26 33 4 0 4 12 20 24 32 5 0 5 13 21 26 34 42 5 0 5 14 23 32 41 6 0 6 15 24 33 42 51 主対角線に関して対称 ・ 最下位桁は、合同式の乗法表と一致 ・ 1桁同士の計算に余り意味がないので、除法表は考えない 第03節 [2] 多進法での乗法筆算 多進法の乗法 = 乗法表 + 左桁シフト 3 4 1 5 × 4 3 4 1 5 × × 2 2 6 4 2 1 3 4 6 2 2 2 + 6 3 4 1 5 1 5 3 3 + 2 0 2 6 6 + 2 4 3 0 4 3 2 3 4 1 5 × 1 1 2 6 4 2 0 2 6 6 3 0 4 3 2 + 1 0 1 3 3 1 3 4 1 2 1 6 6 1 0 1 3 3 第03節 [3] 多進法での除法筆算 42053[7] ÷ 214[7] = 163[7] ‥ 145[7] 1 6 3 整商 2 1 4 4 2 0 5 3 被除数 2 1 4 商1を立てる 2 0 3 5 差を求める 1 6 2 3 商6を立てる 1 1 2 3 6 4 5 商3を立てる 1 4 5 剰余 214 ×1 = 214 214 ×2 = 431 214 ×3 = 645 214 ×4 = 1162 214 ×5 = 1406 214 ×6 = 1623 第06節 [1] 10進数の正実数から多進数への変換 ● 正実数の10進表記から多進表記への変換 [1] 実数を整数部分と小数部分に分け、 整数部分は、自然数の変換算法と同様にする。 [2] 小数部分については、基数を掛け、 その結果の整数部分(0を含めて必ず1桁)を順に並べていく。 [3] 上記の結果の小数部分のみを取り出し、[2]を繰り返す。 [4] 小数部分が0になったら終了である。 ただし、循環小数となり、終了しない場合がある。 0.124[10] = 0.03022‥[5] 5 0.124 0.62 3.1 0.5 2.5 2.5 ‥ 基数による乗算 0.124 0.62 0.1 0.5 0.5 0.5 ‥ 小数部分 3 0 0 0 2 2 ‥ 整数部分(各桁)
© Copyright 2024 ExpyDoc