投稿ナビゲーション


Ei1 プログラミング技術基礎です” への1件のフィードバック

  1. (注意)長文のコメントになっていますが、先生方、コメントは数行でいいですからね。

    投稿ありがとう。

    これは、プログラミングの基礎だね。
    ここで学んでいることはソフトウエアというよりは、ハードウエアに近いね。
    情報技術科では、一般的によく学ぶソフトウエアとしてプログラミングの前に、コンピュータの仕組み(ハードウエア)から勉強するからね。

    コンピュータは電気を1と0の信号を利用した機械です。1と0とは、電気が「ある」か「ない」かを信号として使っている。
    これを複数の桁に並べて、2進数として扱っている。(我々の世界は一般的に、10進数。つまり、0から9の10個の記号(数字)で数値を表すが、2進数は0と1の2つの記号で表す。)
    しかし、この2進数を数値のようなデータだけでなく、コンピュータが持っているさまざまな機能を呼び出す信号(命令)として割り当てている。ココに書かれている「転送」「加算」「減算」「左シフト」「右シフト」が機能だよね。

    つまり、これらの機能を呼び出す命令を、「10110101」のような1と0の数字の羅列に割り当てている。もちろん、機能の種類によって割り当てられる2進数のパターンは違う。
    さすがに0と1の数字の羅列では人間はわかりにくいので、これらの羅列に「LD」「ST」「ADDA」「ADDL」「SUBA」「SUBL」「SLA」「SLL」「SRA」「SRL」など文字に置き換えて扱っている。ちなみに「LD」は、LOADを省略したもの。

    そして、これらの命令を順番に並べて、プログラムは書かれる。

    このように、コンピュータの持っている機能を2進数で書き並べたプログラムを「機械語(マシン語)」と呼びます。これがコンピュータを動かすための唯一のプログラミング言語です。
    しかし、これではわかりにくいので、LD,ST,ADDA…のように置き換えて書き並べたプログラムを「アセンブラ言語」といいます。アセンブラ言語はマシン語と1対1になっています。
    ということは、コンピュータは種類によってその持っている機能が違います。我々が普段使っているパソコンと何百億円もするスーパーコンピュータとは基本的な機能は同じでも、当然、持っている機能は違います。つまり、マシン語やアセンブラ言語はコンピュータによって違うのです。

    浜工の情報技術科では、コンピュータの仕組みと併せてアセンブラ言語からプログラミングを学びます。ただ問題は…どのコンピュータで勉強するかです。コンピュータにはさまざまな種類があり、コンピュータによってアセンブラ言語は違うからです。
    浜工の情報技術科では、資格試験等で用いられるCOMETⅡとうい架空のコンピュータのアセンブラ言語CASLⅡで、コンピュータの仕組みとプログラミングの基礎を学びます。(資格試験にも役に立つので…)

    ちなみに…
    コンピュータごとにプログラムの書き方が違ってくるのでは面倒です。そこで、どのコンピュータでも共通に使えるプログラミング言語が生まれました。このような言語を「高級言語」といいます。
    浜松工の情報技術科では、1年生の後半から、特に「C言語」を中心に本格的なプログラミングの学習をしていきます。


    投稿してくれた説明が、あまりにもサッパリし過ぎて、情報技術科以外の人には何のことかサッパリわからないと思いますので、長文になりましたが解説を入れました。

    一般の人にも分かり易く書くことは、実は勉強していること整理することになり、自分の勉強になってスゴくためになります。

    もうちょっと丁寧な説明を心がけてね。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です