はなまるとれない

障害があってもやっていくブログ

パソコンの言語について パソコンに日本語は分からない

パソコンってそもそも日本語分かってる?

この見出しは、正直バカっぽいと思う。

日本語どころか英語も怪しいのだ。あいつらは0と1の羅列しか分かっていない。

 

 

パソコン言葉、マシン語について

 

 

パソコンが”1”と”0”の集合体だと分かったのはいつくらいだろうか。

私の場合は、デジモンアドベンチャーがあったおかげだと思っている。

背景に0と1がずっと書いてある羅列がついていたし、デジモンの世界、『デジタルワールド』内では、そんな処理をしていた気がする。

 

 

参考画像 (いい画像は無かった・・・)

 

とにかく、デジタルと言えば、0と1がひたすら続く。これがパソコンの言語になっている、マシン語と言われるやつだ。

ただ、0と1との羅列が続いているだけで、私たちには全然理解できないから、これを人間が見て分かりやすい言語に替える必要がある。

プログラムを書く人間も、0と1だけをただただ入力するのは気が変になりそうだからね。

 

 

・・・そういう仕事でもいいかもしれない。

ちなみに日本語は、規格によって違うけれど、1文字2バイト(1バイト=0と1の固まりが8つ)使うので、1文字を表現しようと思うと

11000001000010 になる。ちなみにこれで「あ」を表している。

これでは仕事にならない・・・。

そうしてできたのが、アセンブリ言語になる。

 

 

カタコトの英語が通じるようになったアセンブリ言語

 

見出しの通り、0と1の集合からカタコトの英語が通じるようになったのが、アセンブリ言語である。

メモリによって指示できることは違うけれども、今回はMIPSの命令セットを紹介する。

命令は方言があったり、処理のスペースの関係で、微妙に違ってくるみたいなんだけど、分厚い教科書に「最も洗練されたものの例」って書いてあるから、まぁ、これからやっていこうと思う。

実際読んでて、頭良すぎ・・・ってなったので洗練されてると思う。細部に神は宿る。

 

MIPSの命令セットは大きく分けて3つあり、

 

①算術(足し算、引き算)

②データコピー(データ転送)

③論理演算(論理演算、条件分岐、ジャンプ)

 

になる。色々機能はないけど、最低限といえばこれくらいなのだ。

算術についてはまた別の記事で丁寧に丁寧に書きたいと思う。

この3つの機能で、コンピュータの機能は果たせるというのだから考えた人はすごいなぁと思う。

 

けど、アセンブリ言語にも欠点があって、実装に関して、コストパフォーマンスが悪いってのがある。

命令が1行ずつしか書けないこと、オブジェクト指向といった概念が無いこと、色々含まれているけど、コストパフォーマンスが悪いのだ。

 

0と1の集合から解放されたけど、田中さんの家に野菜を運ぶことを指示すると考えた時に

 

田中 3番地 5番地 荷物 運ぶ

荷物 野菜 果物 飲み物

野菜 キュウリ ・・・・

 

3つの変数しか取り扱えないことや指示が1つずつになってしまうことを考えると、苦労しそう。

 

 

だから、アセンブリ言語よりもっと楽に実装できるように考えられたのが高水準言語になる。

 

「アレ、あいつの家に運んどいて」が通じる 高水準言語

高水準言語は、C言語とかJavaとか、コンパイル(変換)するとアセンブリ言語になる言語のことだ。

つまり、高水準言語でコンピュータに指示を出そうとすると、高水準言語からアセンブリ言語へのコンパイルアセンブリ言語からマシン語へのコンパイルの計2回必要になる。

 

2度手間では?と思うかもしれないが、プログラムを複数人で触る場合は、オブジェクト指向、変数の利用、一部の言語ではアクセス先の指定(ポインタ)を利用しなくてすむなど、コンパイルの手間に比べて管理運用が構造化できるという利点がある。

 

高水準言語によって、機能は違っているが、四則演算を演算子で表現できるのは大きな利点である。

アセンブリ言語は、加算・減算のみ対応で、コーディングの際にも、演算子を用いての記述はしない。

 

俺たちは、高水準言語を使うことで、より楽にプログラミングができるようになった。けれども、原理を知っておかないことには、機能を実装する際に、プログラムとハードウェアの働きを予想することができない。

 

そういう意味で、原理を学ぶ意義は非常にある。

 

私たちがいる高台は、先人たちの土台があって、はじめてこの景色をみることができている。

 

FGOのイベントで忙しくて仕方がないが、地道にやっていきたい。

 

 

 

この本良いです。電子書籍版なら東京工業大学情報工学系の『コンピューター論理設計』という講義のテキストにもなってた。

 

上下セットで800円値引き+30%ポイント還元!!!

今だけっぽいです。コンピュータ関係のテキストで硬めのやつが欲しいなーと思った方はぜひ・・・

東京工業大学は講義資料、講義ノートが公開されていたり、講義映像もアップロードしている辺り本当に太っ腹だと思う。ついていきます!