(強いAI)技術的特異点/シンギュラリティ161at FUTURE
(強いAI)技術的特異点/シンギュラリティ161 - 暇つぶし2ch69:yamaguti
19/06/07 11:23:40.55 4Z3mBigD.net
4.5 乗算
Subleqにおける唯一の些細な乗算は2倍の乗算であり、
  t=a+a: t; a Z; a Z; Z t; Z
?、式を使用できます
2つの数字を乗算するには、以下の式を使用できます
  A*B = (2A)*(B/2) + A*(B%2)
? ry 整数とモジュール分割が必要です。
これは単純な再帰式ですが、整数と剰余演算とが必要 。
除算は、次のアルゴリズムとして実装できます
? ry 与えられたとき、Bは2だけ増加し、次の増加がBよりAより大きくなるまで増加する。
2つの数AとBが与えられた時 B を、 B が A より大きくなるまで 2 倍
? ry させると同時に、別の変数Iを2だけ増やします。これは1に初期化されています。
Bを増加させ同時に、 1 に初期化されている別の変数 I を 2 倍
? ry と、私は除算の結果の一部を保持しますか? 残りはABと元のBを ry 。
BがAより大きくなると、 I は除算の結果の一部を保持し - 残りは A - ( 訳注 : 前回の ) B と元の B とを使用してさらに計算 。
これは再帰的にすべてのIを蓄積することができます。
A <Bの最後のステップでは、Aはモジュラスです。
このアルゴリズムは、Cの短い再帰関数として実装できます
? 終了時に、この関数は引数jの結果と除算モジュラスとして整数除算を返します。
この整数除算その結果と、そして引数 j の除算モジュラスとを、この関数は終了時に返します。


次ページ
最新レス表示
レスジャンプ
類似スレ一覧
スレッドの検索
話題のニュース
おまかせリスト
オプション
しおりを挟む
スレッドに書込
スレッドの一覧
暇つぶし2ch