計算モデルとは? わかりやすく解説

計算モデル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2023/08/31 06:19 UTC 版)

計算モデルけいさんモデル: model of computation)は、計算推論証明といった行為を理論的・抽象的に考察するための数理モデルである。計算模型ともいう。これに含まれるうちで、チューリングマシンなどのような、現実の機械に似せた架空のものを抽象機械といい、そうでないものとしてはラムダ計算などがある。ラムダ計算は数学の関数式の組み合わせであり、ソースコードのような計算モデルである。

理論計算機科学の多くの分野で、「計算機械」を理論的に、すなわちモデル化して扱うために多大に活用されている。また特に抽象機械は、実際のプロセッサコンパイラインタプリタの研究や開発など、理論に限らず実際的な分野でも活用される。計算理論においては、計算可能性計算複雑性について形式的・定量的に示すためなどに使われており、古典的な成果にチャーチ=チューリングのテーゼがある。

より現実の計算機に近づけた機械の定義には命令セットレジスタ、メモリモデルなども含まれる。現在の一般的なコンピュータ(要するにいわゆるノイマン型)を抽象化した計算モデルとしてはRAMモデル(ランダムアクセスマシン)がある。これはメモリに対してインデックス付けによりランダムアクセス可能な計算モデルである(チューリングマシンではテープの1区画ずつの移動しかできない)。キャッシュメモリが一般化し、そのヒット率が性能に与える影響が大きくなるにつれて、メモリの階層を前提とした計算モデルが重要となった。

ハードウェアとして実装されていない(実装する予定のない)プロセッサの設計も一種の抽象機械である[1]。特にインタプリタの形式でソフトウェアとして実装されている抽象機械を仮想機械と呼ぶ。研究目的などで、より抽象的な抽象機械の実装を作って研究などに使うこともある。

抽象機械を使用することで、実際にシステムを組み立てることなく時間、メモリ使用量など特定の操作の実行に要するリソースを計算で求めることが可能である。

関連項目

脚注

  1. ^ と言えなくもないが、実機のプロセッサに近い設計では、理論的に扱うための利点はほぼ無い。

計算モデル

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/08/26 20:47 UTC 版)

共通中間言語」の記事における「計算モデル」の解説

CILオブジェクト指向かつスタックベースである。これは、たいていのプログラミング言語同様、命令パラメータ結果が、いくつかのレジスタや他のメモリ領域保持されるではなく単一スタック上に保持されることを意味するx86における加算命令のアセンブリコード例を挙げるadd eax, edx ここで、eaxedx汎用レジスタであり、上記eaxedx内容加算代入している。 これに相当する中間言語 (IL) のコードは以下のように表せる。 ldloc.0ldloc.1addstloc.0 // a = a + b または a += b; ここで、スタック上に2つローカル変数プッシュされる。加算命令呼び出された際にオペランドポップされ結果プッシュされる。残った値はその後ポップされ最初ローカル変数ストアされる。

※この「計算モデル」の解説は、「共通中間言語」の解説の一部です。
「計算モデル」を含む「共通中間言語」の記事については、「共通中間言語」の概要を参照ください。

ウィキペディア小見出し辞書の「計算モデル」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「計算モデル」の関連用語

計算モデルのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



計算モデルのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアの計算モデル (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaの共通中間言語 (改訂履歴)、Javaバイトコード (改訂履歴)、計算理論 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS