質問: コンピューターを動作させる手順や命令を記述したプログラムのことを、「ハードウェア」に対して何という?
回答: ソフトウェア

タイトル: 制御装置
制御装置(せいぎょそうち、Control Unit)とは、一般に何らかのシステム全体あるいは一部を制御する装置を指す。制御装置(せいぎょそうち、英: control unit)とは、プロセッサの一部で、プロセッサの演算装置やレジスタの動作や、記憶装置の読み書き、入出力などを制御する装置である。この装置の出力は他の装置の活動を制御する。制御装置は有限オートマトンでモデル化される。理論的にはシーケンス制御がおこなうことと同じだが、一般にはシーケンス制御の語はプロセッサの制御を指しては使われていない。初期のコンピュータでは、「ランダム論理」によるワイヤードロジックによる制御がおこなわれていた。マイクロプログラム方式が発明され、以後よく使われた。初期に採用したものではSystem/360(互換性のためのエミュレーションと、下位機種のハードウェアの単純化の目的だった)が有名である。

タイトル: BASIC
また、マイクロソフト製BASICは中間コードを使用する構造になっており、汎用機を再現した極めてエミュレータに近いランタイム形式の実行環境でもあったため、当時の互換性が皆無なコンピュータ事情の中でも、スクリプト自体の移植は容易だった。その後、(MS-DOS発表以前の)パソコンに、操作を提供するのにも使われ、しばしばROM-BASICとしてハードウェアに組み込まれた。電源投入後にエディタ込みで利用できることから、現在における、シェル、インタフェースとしての役割ももち、ローダなどの役割も担った。入力の効率化のため、省略形式での入力や、1980年代後半には、ラベル、インデントへの内部的な対応、C言語への橋渡し、日本では漢字の利用など、様々な機種ごとの独自の発展を遂げた。当時のPCの処理速度は遅いので、処理の高速化が必要な部分はデータ形式でアセンブリ言語による処理を呼び出すなどの手法もとられた。

タイトル: マイコンソフト
デジタル256段階の入力が可能なデバイス。後にMSX等で制御するための手段とサンプルプログラムがBASICマガジン誌上で公開されている。

タイトル: スタックマシン
現代のほとんどのコンピュータ(命令セットを問わない)とほとんどのコンパイラは、メモリ上のコールスタックを局所変数の格納場所およびサブルーチンからの復帰のための情報格納に使っている。サブルーチンコールのたびに「スタックフレーム」をコールスタック上に作り、そのサブルーチンから呼び出し側に復帰するまで対応するスタックフレームが維持される。コールスタックを特別なアドレスレジスタなどを使ってハードウェアで管理する場合もある。あるいは、コンパイラの呼出規約によって特定の汎用レジスタをコールスタック処理に使う場合もある。一般にコンピュータは、大域変数とその時点で実行中のプロシージャまたは関数の局所変数への効率的アクセス手段を提供する。一般に呼び出し側のプロシージャまたは関数のスタックフレームを遡ってアクセスする必要性はほとんどなく、ハードウェアが直接そのような手段を提供することもない。

タイトル: パッチ
パッチ(英: patch)とは、コンピュータにおいてプログラムの一部分を更新してバグ修正や機能変更を行うためのデータのこと。「修正プログラム」や「アップデート(プログラム)」などとも呼ばれる。実際に変更を施す際は「パッチを当てる」、「パッチを適用する」と言う。同名のUNIXコマンドpatchのことも指す。ゲームのグラフィックや様々なデータを改造するプログラムやファイルを後から追加するパッチはModと呼ばれる。

タイトル: Javaプラットフォーム
Javaのプログラムは、オペレーティングシステム (OS) やハードウェアに依存しないバイトコード(中間言語)と呼ばれる抽象的なコードで表現されている。そのため、Javaプログラムの実行に必要な仮想マシン (virtual machine) や、開発に必要な標準ライブラリセットおよびコンパイラを個々の環境にあわせて作りさえすれば、Javaプログラムはそれら全ての環境で同一に動く。Javaプラットフォームとはこうした実行環境および開発環境のことである。Javaプラットフォームは、Java、Javaアプレット、Java Runtime Environment、JVM、携帯電話や組み込み機器対応Java (Java ME)、Java Web Start、Java製アプリケーションなども含めてまとめて単純に「Java」と呼ばれることがある。

タイトル: CC (DM Command)
CC (CREATE_COPY)とは、アポロコンピュータ社のコンピュータに搭載されていたウィンドウシステム(ディスプレイマネージャ)で利用できた、制御コマンド『DMコマンド』の一つ。

タイトル: NXビット
多くのオペレーティングシステム (OS) がNXの手段を実装もしくは保持しており、また数種のOSはNXエミュレーションを実装もしくは保持している。これはアルファベット順のOSリストである。それぞれ、技術は新しいものから古いものへの順となっている。それぞれのOSの最初には、それぞれの技術がサポートする主要な機能が掲載されたデータ表がある。これらのOSの本質がその本質に関する情報の好都合な拡散を保証するので、これらの表は下記を要約するために提供されている。表は下記の構成となっている。アーキテクチャ依存エミュレーションを供給するOSはハードウェアでサポートしていない全てのプロセッサ上で機能する。「その他のサポート」行はまだ明白ではない手段、たとえば明確なNXビットを搭載していないハードウェアが何らかの方法で機能を実現しているプロセッサのためにある。

タイトル: NXビット
全てのNX技術はあらゆる領域のメモリのためにNXビットの状態を制御するために追加のプログラミングロジックのためにオーバーヘッドを作り出す。しかし、ハードウェアNXビットが存在すれば演算は通常CPU自身で行われ、オーバーヘッドは生じない。ハードウェアNXビットを提供するCPUでは、特に明記する場合を除いてはリストされている全てのNX技術においてオーバーヘッドを生じない。

タイトル: パーソナルコンピュータ
また、認識・使用可能なメモリの上限はOSに左右される。 なお搭載するメインメモリの量が足りないと、OSのデフォルトの設定ではやむを得ずメインメモリの代わりに補助記憶装置を作業場所として使うようになっていることは多く、そうなるとPCの処理速度が一気に落ちてしまい、いわゆる「もっさり」とした動きになってしまうので、メインメモリをたっぷりと搭載しておくことが快適な処理速度を保つ上で鍵となる。ストレージとも、補助記憶装置とも、外部記憶装置ともいう。不揮発性の記憶であり、通電しなくても記憶が保たれ、容量当たりの単価が安く大容量のものが使えるが、書き込み速度がメインメモリのそれと比べて非常に遅い。したがってプログラム、データなどの格納場所(ストレージ)として使われたり、他のPCへプログラムやデータを移すために用いられる。PCに内蔵するもの、外付けのもの、着脱可能なリムーバブルなものがある。

タイトル: 実行 (コンピュータ)
コンピューターとコンパイラーが高速になるにつれて、これはそれほど課題ではなくなった。また、ユーザーにとっては開発にかかる時間よりも最終製品の実行速度が重要である。コンパイラは通常、すぐには実行できない抽象的な結果を生成する。多くの場合、オペレーティングシステムは、プログラムの実行が開始される直前に、コンパイラのオブジェクトコードを最終的な実行可能形式に変換する。

タイトル: VLIW
VLIW(英: Very Long Instruction Word、超長命令語)とは、プロセッサの命令セットアーキテクチャ(ISA)の一種類である。VLIWプロセッサは、その実行ユニットが並列的に一度に実行できる、ロード・ストア・演算・分岐などの命令の複数個から成る、かなり長い命令語によってー単位の命令が構成されており、それをそのまま実行ユニットに投入する(各命令をatom、まとまったものをmoleculeなどと呼ぶこともある)。実行に複数クロック掛かるような命令もあるかもしれないが、そういったものも含めて、タイミング的に全て差し支えなく実行できるようにVLIWの機械語プログラムは書かれていなければならず、依存や順序を解決するような機構をハードウェアでは持たない。一般に、そのようなコードを生成するのはコンパイラの仕事となる。

タイトル: 新しい種類の科学
単純なセルラー・オートマトン、チューリングマシン、コンビネータはそのようなフレームワークの例であるが、より複雑なセルラー・オートマトンは必ずしも単純なプログラムではあるとは限らない。新しいフレームワークを、特に自然のシステムの操作を捉えるために、発明することも可能である。単純なプログラムが素晴らしいのは、その大きな部分において、非常に複雑なものを作成することができる点である。プログラムのほとんどどのようなクラスでも可能な種類のものを列挙するだけで、予期しないようなおもしろいことを行う例をすぐに得ることができる。このことから、「プログラムがそのように単純なのであれば、複雑なものは一体どこから来たのだろう?」という疑問が出てくる。ある意味で、プログラムの定義には、プログラムで可能なことすべてを直接コード化するだけの十分なスペースはない。

タイトル: コンピュータ数値制御
CNCが普及すると、APTのようにライセンス問題のない新たな標準が必要とされるようになった。そこでプロッタで使用されていたマークアップ言語などをベースとした標準がいくつか登場した。そのうちガーバー・サイエンティフィック(英語版)のプロッタで使われていたGコードが特に広く普及していった。このファイルフォーマットは非常に一般化したため、EIA規格となった。また、工作機械メーカーはGコード以外の独自のプログラミング方法を開発しているところもある(ヤマザキマザックの Mazatrol など)。最近では、パラメトリックプログラミング(マクロプログラミング)と呼ばれる論理コマンドをサポートするCNCインタプリタも登場している。パラメトリックプログラムには、装置制御コマンドと同時にBASIC風の制御言語が含まれている。

タイトル: プロセッサ (曖昧さ回避)
プロセッサは基本的には、プロセス(process)する(※)装置や人や法人など全般を指す。

タイトル: Pure Data
Pd の基本オブジェクトは、算術演算、論理演算、ビット演算といった通常のプログラミング言語にある演算子のようなものから、波形発信器や高速フーリエ変換や各種デジタルフィルタなどの音声処理DSP機能に特化したもの(チルダ(~)が付いていて区別される)まである。

タイトル: 集積回路設計
大まかに言えば、ディジタル集積回路の設計は以下の3つの工程に分けられる。論理設計が、正しく機能するかどうかの鍵である。第三工程の物理設計は(間違いがなければ)機能に影響を与えることはないが、性能やコストに影響する。またコンピュータ(プロセッサ)のように複雑なものもある。CPU設計の記事を参照のこと。仕様には「MP3フォーマットにエンコードする」とか「IEEE浮動小数点演算を実装」などと簡単に書かれているかもしれない。これらの簡単な記述の背後には数百ページにおよぶ仕様が存在し、数千行のコンピュータコードが存在する。従って、RTLであらゆる場合を想定して正しく機能するよう記述するのは非常に困難である。これに対して様々な技法が用いられている。それらは完全ではないが有効である。論理シミュレーション、形式手法、ハードウェアエミュレーションなどがある。

タイトル: モデリング言語
正しいツールのサポートを伴う実行可能なモデリング言語は、しかしながら、同じ表現からシステムの検証と承認 (verification and validation)、シミュレーション、及びコード生成を自動化することが期待される。