goo blog サービス終了のお知らせ 

gooブログはじめました!

写真付きで日記や趣味を書くならgooブログ

Prita Diary 25082025

2025-08-26 04:27:56 | 日記

コンピュータパート9
メモリ
コンピュータのメモリは、数値を格納したり読み込んだりできるセルのリストと考えることができます。各セルには番号付きの「アドレス」があり、1つの数値を格納できます。コンピュータに「1357番のセルに123を格納」したり、「1357番のセルにある数値と2468番のセルにある数値を加算し、その結果を1595番のセルに格納」するように指示することができます。メモリに格納される情報は、実質的にあらゆるものを表現できます。文字、数字、さらにはコンピュータ命令でさえ、同じように簡単にメモリに格納できます。CPUは異なる種類の情報を区別しないため、メモリが単なる数値の列として認識しているものに意味を与えるのはソフトウェアの役割です。

 

ほとんどすべての現代のコンピュータでは、各メモリセルは8ビット(バイトと呼ばれる)のグループで2進数を格納するように設定されています。各バイトは256種類の数値(2の8乗 = 256)を表現できます。 0から255、または-128から+127までの範囲で数値を格納します。より大きな数値を格納する場合は、連続する複数のバイト(通常は2、4、または8バイト)を使用します。負の数が必要な場合は、通常、2の補数表記で格納されます。他の配列も可能ですが、特殊なアプリケーションや歴史的な背景以外では、通常は見られません。コンピュータは、数値で表現できるあらゆる情報をメモリに格納できます。現代のコンピュータは、数十億バイト、あるいは数兆バイトものメモリを搭載しています。

 

CPUには、レジスタと呼ばれる特殊なメモリセルセットが搭載されており、メインメモリ領域よりもはるかに高速に読み書きできます。CPUの種類に応じて、通常2~100個のレジスタが存在します。レジスタは、最も頻繁に使用されるデータ項目に使用され、データが必要になるたびにメインメモリにアクセスする手間を省きます。データは絶えず処理されているため、メインメモリ(ALUや制御ユニットに比べて遅いことが多い)へのアクセスの必要性が減ることで、コンピュータの速度が大幅に向上します。

 

コンピュータのメインメモリには、主に以下の2種類があります。

 

ランダムアクセスメモリ(RAM)
読み取り専用メモリ(ROM)
RAMはCPUからの命令があればいつでも読み書きできますが、ROMには変更されないデータとソフトウェアが事前にロードされているため、CPUは読み取りのみ可能です。ROMは通常、コンピュータの初期起動命令を保存するために使用されます。一般的に、RAMの内容はコンピュータの電源を切ると消去されますが、ROMはデータを無期限に保持します。PCの場合、ROMにはBIOSと呼ばれる専用のプログラムが含まれており、コンピュータの電源投入時またはリセット時に、ハードディスクドライブからコンピュータのオペレーティングシステムをRAMにロードする処理を制御します。組み込みコンピュータでは、ディスクドライブが搭載されていないことが多く、必要なソフトウェアはすべてROMに保存されている場合があります。ROMに保存されるソフトウェアは、概念的にソフトウェアというよりハードウェアに近いため、ファームウェアと呼ばれることがよくあります。フラッシュメモリは、電源を切ってもデータを保持し、書き換えも可能なため、ROMとRAMの区別が曖昧です。ただし、通常、従来のROMやRAMよりもはるかに低速であるため、高速性が不要なアプリケーションにのみ使用されます。

 

より高度なコンピュータには、レジスタよりも低速ですがメインメモリよりも高速なRAMキャッシュメモリが1つ以上搭載されている場合があります。一般的に、この種のキャッシュを搭載したコンピュータは、頻繁に必要となるデータを自動的にキャッシュに移動するように設計されており、多くの場合、プログラマによる介入は必要ありません。

 

入出力(I/O)
I/Oは、コンピュータが外部と情報を交換するための手段です。コンピュータに入力または出力を提供するデバイスは、周辺機器と呼ばれます。一般的なパーソナルコンピュータでは、周辺機器には、キーボードやマウスなどの入力デバイスと、ディスプレイやプリンタなどの出力デバイスが含まれます。ハードディスクドライブ、フロッピーディスクドライブ、光ディスクドライブは、入出力デバイスの両方として機能します。コンピュータネットワークもI/Oの別の形態です。I/Oデバイスは、多くの場合、独自のCPUとメモリを備えた複雑なコンピュータです。グラフィックス処理装置(GPU)には、3Dグラフィックスの表示に必要な計算を実行する50台以上の小型コンピュータが搭載されている場合があります。現代のデスクトップコンピューターには、メインCPUのI/O処理を補助する多数の小型コンピューターが搭載されています。2016年頃のフラットスクリーンディスプレイには、独自のコンピューター回路が搭載されています。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18


Prita Diary 24082025

2025-08-24 18:57:12 | 日記

コンピュータ部品 8
制御ユニット
制御ユニット(制御システムまたは中央制御装置と呼ばれることが多い)は、コンピュータの様々なコンポーネントを管理します。プログラム命令を読み取り、解釈(デコード)し、コンピュータの他の部分を起動する制御信号に変換します。高度なコンピュータの制御システムは、パフォーマンスを向上させるために、一部の命令の実行順序を変更する場合があります。

 

すべてのCPUに共通する重要なコンポーネントは、プログラムカウンタです。これは、メモリ内の次の命令が読み取られる位置を追跡する特殊なメモリセル(レジスタ)です。

 

制御システムの機能は以下の通りです。これは簡略化した説明であり、CPUの種類によっては、これらのステップの一部が同時に、または異なる順序で実行される場合があります。

 

プログラムカウンタが示すセルから、次の命令のコードを読み取る。

命令の数値コードを、他の各システム用の一連のコマンドまたは信号にデコードする。

プログラムカウンタをインクリメントして、次の命令を指すようにする。

命令に必要なデータをメモリ内のセル(または入力デバイス)から読み取る。必要なデータの位置は通常、命令コード内に格納されています。
必要なデータをALUまたはレジスタに提供します。
命令の実行にALUまたは専用ハードウェアが必要な場合は、ハードウェアに要求された操作を実行するよう指示します。
ALUからの結果をメモリ位置、レジスタ、あるいは出力デバイスに書き戻します。
ステップ(1)に戻ります。
プログラムカウンタは(概念的には)単なるメモリセルの集合であるため、ALU内で行われる計算によって変更される可能性があります。プログラムカウンタに100を加えると、次の命令はプログラム内の100番目以降の位置から読み込まれます。プログラムカウンタを変更する命令はしばしば「ジャンプ」と呼ばれ、ループ(コンピュータによって繰り返される命令)や条件付き命令実行(どちらも制御フローの例)を可能にします。

 

制御装置が命令を処理するために実行する一連の演算は、それ自体が短いコンピュータプログラムのようなものです。実際、より複雑なCPU設計の中には、マイクロシーケンサと呼ばれる、さらに小さなコンピュータがもう一つ搭載されており、これらのイベントすべてを発生させるマイクロコードプログラムを実行します。

 

中央処理装置(CPU)
制御装置、ALU、レジスタは、総称して中央処理装置(CPU)と呼ばれます。初期のCPUは、多数の個別のコンポーネントで構成されていました。1970年代以降、CPUは通常、マイクロプロセッサと呼ばれる単一のMOS集積回路チップ上に構築されています。

 

算術論理装置(ALU)
ALUは、算術演算と論理演算という2種類の演算を実行できます。特定のALUがサポートする算術演算は、加算と減算に限定される場合もあれば、乗算、除算、正弦、余弦などの三角関数、平方根などを含む場合もあります。整数(整数)のみを演算できるコンピュータもあれば、精度は限られているものの、浮動小数点数を用いて実数を表すコンピュータもあります。しかし、最も単純な演算しか実行できないコンピュータであれば、より複雑な演算を、実行可能な単純なステップに分解するようにプログラムすることができます。したがって、あらゆるコンピュータであらゆる算術演算を実行できるようにプログラムできます。ただし、ALUがその演算を直接サポートしていない場合は、プログラムに時間がかかります。ALUは数値を比較し、一方が他方と等しいか、より大きいか、小さいかに応じてブール値の真理値(真または偽)を返すこともできます(「64は65より大きいか?」)。論理演算には、AND、OR、XOR、NOTなどのブール論理が含まれます。これらは、複雑な条件文の作成やブール論理の処理に役立ちます。

 

スーパースカラコンピュータは複数のALUを搭載し、複数の命令を同時に処理できる場合があります。グラフィックスプロセッサやSIMDおよびMIMD機能を備えたコンピュータには、ベクトルや行列の演算を実行できるALUが搭載されていることがよくあります。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15


Prita Diary 23082025

2025-08-23 02:14:05 | 日記

コンピュータ パート7
MOS集積回路の開発はマイクロプロセッサの発明につながり、コンピュータの商用利用と個人利用の爆発的な増加を予感させました。どのデバイスが最初のマイクロプロセッサであったかは、「マイクロプロセッサ」という用語の正確な定義が不明確であることなどから議論の的となっていますが、最初のシングルチップ・マイクロプロセッサがIntel 4004であったことはほぼ異論がありません。これは、フェデリコ・ファギン氏がシリコンゲートMOS IC技術を用いて、インテルのテッド・ホフ氏、嶋正敏氏、スタンレー・メイザー氏と共に設計・実現したものです。1970年代初頭、MOS IC技術により、10,000個以上のトランジスタを1つのチップに集積することが可能になりました。

 

システム・オン・チップ(SoC)は、コインサイズのマイクロチップ(またはチップ)上に完全なコンピュータを集積したものです。RAMやフラッシュメモリを内蔵している場合もあります。 RAMがSoCに統合されていない場合、通常はSoCの真上(パッケージ・オン・パッケージと呼ばれる)または真下(回路基板の反対側)に配置され、フラッシュメモリは通常SoCのすぐ隣に配置されます。これは、データ信号が長距離を移動する必要がないため、データ転送速度を向上させるためです。1945年のENIAC以来、コンピュータは飛躍的に進歩し、現代のSoC(Snapdragon 865など)はコインサイズでありながら、ENIACの数十万倍の性能を備え、数十億個のトランジスタを集積しながら、消費電力はわずか数ワットです。

 

モバイルコンピュータ
初期のモバイルコンピュータは重く、主電源で動作していました。50ポンド(23kg)のIBM 5100がその初期の例です。 Osborne 1やCompaq Portableといった後発のポータブルコンピュータは大幅に軽量化されましたが、それでも電源への接続は必須でした。Grid Compassなどの初期のラップトップコンピュータは、バッテリーを搭載することでこの要件を解消しました。そして、コンピューティングリソースの小型化とポータブルコンピュータのバッテリー寿命の進歩に伴い、2000年代にはポータブルコンピュータの人気が高まりました。同様の進歩により、メーカーは2000年代初頭までに携帯電話にコンピューティングリソースを統合できるようになりました。

 

これらのスマートフォンやタブレットは様々なオペレーティングシステムで動作し、近年では市場を席巻するコンピューティングデバイスとなっています。これらは、コインサイズのマイクロチップ上に完全なコンピュータを集積したシステムオンチップ(SoC)を搭載しています。

 

従来とは異なるコンピュータ
コンピュータは電子化されている必要はなく、プロセッサ、RAM、ハードディスクさえも搭載する必要はありません。 「コンピュータ」という言葉は一般的にパーソナル電子コンピュータと同義ですが、現代のコンピュータの典型的な定義は、「計算を行う装置、特に高速な数学的または論理的演算を実行する、あるいは情報を組み立て、保存、相関させ、その他の方法で処理するプログラム可能な電子機械」です。この定義によれば、情報を処理するあらゆる装置はコンピュータに該当します。

 

ハードウェア
ハードウェアという用語は、コンピュータを構成する実体のある物理的物体であるすべての部品を指します。回路、コンピュータチップ、グラフィックカード、サウンドカード、メモリ(RAM)、マザーボード、ディスプレイ、電源、ケーブル、キーボード、プリンター、そして「マウス」といった入力デバイスはすべてハードウェアです。

 

その他のハードウェアに関するトピック
汎用コンピュータは、算術論理演算装置(ALU)、制御装置、メモリ、そして入出力装置(総称してI/O)という4つの主要コンポーネントで構成されています。これらの部品は、多くの場合、複数の配線で構成されるバスによって相互接続されています。これらの部品の内部には、数千から数兆個もの小さな電気回路が組み込まれており、電子スイッチによってオン/オフを切り替えることができます。各回路は1ビット(2進数)の情報を表し、回路がオンのときは「1」、オフのときは「0」(正論理表現)を表します。これらの回路は論理ゲートに配置されており、1つまたは複数の回路が他の1つまたは複数の回路の状態を制御できます。

 

入力デバイス
入力デバイスは、コンピュータの動作を制御し、データを提供する手段です。例としては、以下のものがあります。
コンピュータキーボード、デジタルカメラ、グラフィックタブレット、イメージスキャナ、ジョイスティック、マイク、マウス、オーバーレイキーボード、リアルタイムクロック、トラックボール、タッチスクリーン、ライトペン。

 

出力デバイス
出力デバイスは、コンピュータが計算結果を人間が理解できる形式で提供する手段です。例としては、以下のものがあります。
コンピュータモニター、プリンター、PCスピーカー、プロジェクター、サウンドカード、グラフィックカード。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15


Prita Diary 21082025

2025-08-21 08:11:00 | 日記

コンピュータ パート6
トランジスタ
電界効果トランジスタの概念は、1925年にジュリアス・エドガー・リリエンフェルトによって提唱されました。ベル研究所でウィリアム・ショックレーの指導を受けていたジョン・バーディーンとウォルター・ブラッテンは、1947年に最初の実用的なトランジスタである点接触型トランジスタを開発しました。これに続き、1948年にはショックレーがバイポーラ接合型トランジスタを開発しました。1955年以降、コンピュータ設計においてトランジスタが真空管に取って代わり、「第二世代」コンピュータが誕生しました。真空管と比較して、トランジスタには多くの利点があります。小型で消費電力が少ないため、発熱も少なくなります。接合型トランジスタは真空管よりもはるかに信頼性が高く、寿命も長く、無限大です。トランジスタ化されたコンピュータは、比較的コンパクトなスペースに数万個のバイナリ論理回路を収容できました。しかし、初期の接合型トランジスタは比較的大型で大量生産が困難だったため、限られた用途に限られていました。

 

マンチェスター大学では、トム・キルバーン率いるチームが、真空管の代わりに新開発のトランジスタを用いた機械を設計・製作しました。彼らが開発した世界初のトランジスタ式コンピュータは1953年に稼働を開始し、2代目は1955年4月に完成しました。しかし、このコンピュータは125kHzのクロック波形の生成と、磁気ドラムメモリの読み書き回路に真空管を使用していたため、完全にトランジスタ化された最初のコンピュータではありませんでした。この栄誉は、ハーウェル原子力研究所の電子工学部門が1955年に製作したハーウェルCADETに与えられます。

 

金属酸化物シリコン電界効果トランジスタ(MOSFET)、別名MOSトランジスタは、1955年から1960年にかけてベル研究所で発明され、幅広い用途向けに小型化・大量生産が可能になった最初の真にコンパクトなトランジスタでした。 MOSFETは、高いスケーラビリティ、バイポーラ接合トランジスタよりもはるかに低い消費電力、そして高密度という特長を備え、高密度集積回路の構築を可能にしました。データ処理に加え、MOSトランジスタをメモリセルの記憶素子として実用化することで、コンピュータにおける従来の磁気コアメモリに代わるMOS半導体メモリの開発につながりました。MOSFETはマイクロコンピュータ革命を牽引し、コンピュータ革命の原動力となりました。MOSFETはコンピュータで最も広く使用されているトランジスタであり、デジタルエレクトロニクスの基本的な構成要素です。

 

集積回路
コンピューティング能力における次の大きな進歩は、集積回路(IC)の登場によってもたらされました。集積回路のアイデアは、国防省王立レーダー研究所に勤務していたレーダー科学者、ジェフリー・W・A・ダマーによって初めて考案されました。ダマーは、1952年5月7日にワシントンD.C.で開催された「品質電子部品の進歩に関するシンポジウム」において、初めて集積回路の公式な説明を発表しました。

 

最初の実用的なICは、テキサス・インスツルメンツのジャック・キルビーとフェアチャイルドセミコンダクターのロバート・ノイスによって発明されました。キルビーは1958年7月に集積回路に関する初期のアイデアを記録し、1958年9月12日に最初の実用的な集積回路の実演に成功しました。1959年2月6日の特許出願において、キルビーは自身の新しい装置を「電子回路のすべての部品が完全に集積された半導体材料の本体」と説明しました。しかし、キルビーの発明はモノリシック集積回路(IC)チップではなく、ハイブリッド集積回路(ハイブリッドIC)でした。キルビーのICは外部に配線接続があったため、大量生産が困難でした。

 

ノイスもまた、キルビーより半年遅れて、独自の集積回路のアイデアを思いつきました。ノイスの発明は、真のモノリシックICチップの先駆けでした。彼のチップは、キルビーのチップが解決できなかった多くの実用的な問題を解決しました。フェアチャイルドセミコンダクター社で製造されたこのチップはシリコン製でしたが、キルビーのチップはゲルマニウム製でした。ノイスのモノリシックICは、1959年初頭に同僚のジャン・ホーニが開発したプレーナプロセスを用いて製造されました。このプレーナプロセスは、カール・フロッシュとリンカーン・デリックによる二酸化ケイ素による半導体表面パッシベーションの研究に基づいています。

 

現代のモノリシックICは、主にMOS(金属・酸化物・半導体)集積回路で構成されています。最初の実験的なMOS ICは、1962年にRCAのフレッド・ハイマンとスティーブン・ホフスタインによって開発された16トランジスタチップでした。その後、ジェネラル・マイクロエレクトロニクス社は、ロバート・ノーマンが開発した最初の商用MOS ICを1964年に発表しました。 1967 年にベル研究所のロバート カーウィン、ドナルド クライン、ジョン サラセがセルフアライン ゲート (シリコン ゲート) MOS トランジスタを開発した後、1968 年にフェアチャイルド セミコンダクターのフェデリコ ファギンがセルフアライン ゲートを備えた最初のシリコン ゲート MOS IC を開発しました。それ以来、MOSFET は現代の IC において最も重要なデバイス コンポーネントとなっています。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15  Link 16  Link 17  Link 18  Link 19  Link 20  Link 21  Link 22  Link 23  Link 24  Link 25  Link 26  Link 27


Prita Diary 19082025

2025-08-19 21:15:52 | 日記

コンピュータ パート5
ENIAC(Electronic Numerical Integrator and Computer)は、アメリカで初めて作られた電子式プログラム可能コンピュータでした。ENIACはColossusに似ていましたが、はるかに高速で柔軟性が高く、チューリング完全でした。Colossusと同様に、ENIACの「プログラム」はパッチケーブルとスイッチの状態によって定義され、後に登場したプログラム記憶型の電子機械とは大きく異なっていました。プログラムを書き込んだら、プラグやスイッチを手動でリセットして、機械に機械的に設定する必要がありました。ENIACのプログラマーは6人の女性で、しばしば「ENIACガールズ」と呼ばれていました。

 

ENIACは、電子工学の高速性と、多くの複雑な問題をプログラムする能力を兼ね備えていました。1秒間に5000回の加算と減算が可能で、これは他のどの機械よりも1000倍高速でした。また、乗算、除算、平方根を求めるモジュールも備えていました。高速メモリは20ワード(約80バイト)に制限されていました。ペンシルベニア大学のジョン・モークリーとJ・プレスパー・エッカートの指揮の下、ENIACの開発と構築は1943年から1945年末の本格稼働まで続きました。この機械は巨大なもので、重量は30トン、消費電力は200キロワット、18,000本以上の真空管、1,500個のリレー、そして数十万個の抵抗器、コンデンサ、インダクタを搭載していました。

 

現代のコンピュータ
現代のコンピュータの概念
現代のコンピュータの原理は、アラン・チューリングが1936年に発表した画期的な論文『計算可能数について』で提唱しました。チューリングは「万能計算機械」と名付けたシンプルな装置を提案し、これは現在では万能チューリング機械として知られています。彼は、この機械がテープに保存された命令(プログラム)を実行することで計算可能なあらゆる計算を実行できることを証明し、機械をプログラム可能にしました。チューリングの設計における基本概念は、計算に必要なすべての命令がメモリに格納されるプログラム格納方式です。フォン・ノイマンは、現代コンピュータの中心概念はこの論文に由来することを認めています。チューリングマシンは今日に至るまで、計算理論における中心的な研究対象となっています。有限のメモリによる制約を除けば、現代のコンピュータはチューリング完全であると言われています。つまり、汎用チューリングマシンと同等のアルゴリズム実行能力を備えています。

 

プログラム格納方式
初期の計算機は固定プログラムを使用していました。機能を変更するには、機械の配線と構造を変更する必要がありました。プログラム格納方式コンピュータの提案により、この状況は変わりました。プログラム格納方式コンピュータは、設計上命令セットを備えており、計算の詳細を示す命令セット(プログラム)をメモリに格納することができます。プログラム格納方式コンピュータの理論的基礎は、アラン・チューリングが1936年に発表した論文で示されました。1945年、チューリングは国立物理学研究所に加わり、電子式プログラム格納方式デジタルコンピュータの開発に着手しました。 1945年に発表された報告書「電子計算機の提案」は、この種の装置の最初の仕様書となった。ペンシルベニア大学のジョン・フォン・ノイマンも、1945年にEDVACに関する報告書の初稿を回覧した。

 

マンチェスター・ベイビーは、世界初のプログラム内蔵式コンピュータであった。イギリスのマンチェスター大学で、フレデリック・C・ウィリアムズ、トム・キルバーン、ジェフ・トゥーティルによって製作され、1948年6月21日に最初のプログラムを実行した。このコンピュータは、世界初のランダムアクセス・デジタル記憶装置であるウィリアムズ管のテストベッドとして設計された。1998年の回顧録では「小型で原始的」と評されたが、現代の電子計算機に不可欠な要素をすべて備えた最初の実用機械であった。 Babyの設計が実現可能であることが実証されるとすぐに、大学ではそれを実用可能なコンピュータ、マンチェスター・マーク1へと開発するプロジェクトが開始されました。

 

マーク1はすぐに、世界初の商用汎用コンピュータであるフェランティ・マーク1のプロトタイプとなりました。フェランティによって製造されたこのコンピュータは、1951年2月にマンチェスター大学に納入されました。この後継機は1953年から1957年の間に少なくとも7台納入され、そのうち1台はアムステルダムのシェル研究所に納入されました。1947年10月、英国のケータリング会社J. Lyons & Companyの取締役たちは、コンピュータの商用開発を促進する上で積極的な役割を果たすことを決定しました。1949年のケンブリッジEDSACをモデルに設計されたLyonsのLEO Iコンピュータは、1951年4月に運用を開始し、世界初のオフィス向け定型コンピュータとして稼働しました。

 

Link 1  Link 2  Link 3  Link 4  Link 5  Link 6  Link 7  Link 8  Link 9  Link 10  Link 11  Link 12  Link 13  Link 14  Link 15