アセンブリ それはコンピュータが理解できる機械語に近いプログラミング言語

かあっ かあっ


あー  からすがないている~ 


空には鮮やかな夕焼けがひろがっている。


はてしなく遠くまで広がる草原。


緩やかに隆起している道を


とことこ家路へつく。道の脇にたっている木でできた柵が


真っ赤に染まっている。 


なんて綺麗な景色なんだろう。


こんなに 美しい場所にすんでいることを大地に感謝する。


あ~ 


家の周りの柵がみえてきた。 


大草原のなかに


まばらにある柵にかこまれた石造りの家。


そこがソーラーの家、ソーラーハウスだ。(^^) (笑)


今日はよくがんばったなー  楽しかったなー


夕日に赤く染まったソーラーの顔はすがすがしい。


にこにこしている。


腕を上にふりあげ肩をまわしてみる。


快調 快調💖


ふふふっっ


木でできた玄関の扉をあけ石でできた部屋にはいる。


さてっと


自宅のパソコンの前にすわり、


うぃ~んとパソコンを起動させる。


アッセンブリ アッセンブラ 


ああ麗しのアセンブリよー


前からぐぐってみたかったんだよねー。


どんな意味があるのだろうか?


先人はどのような気持ちで命名したんだろうか。


夢のある言葉だよねー。


多分C言語がつくられるより以前の


コンピューターの黎明期にあらわれた


言葉だとおもうんだ。ロマンあふれるよねー。


うっとり。


コンピューターの黎明期・・・


ゼロからプログラミング言語とコンピューターの仕組みを


製作するなんて・・・


なんて壮大な計画だったんだろう。


何もないところから計画をたちあげるなんて・・・


外国の方だとおもうけど


ものすごい行動力だね。


よしっと。


ブラウザーにアセンブリとうちこみ検索する



アセンブリ言語とは



アセンブリ言語(アセンブリげんご、assembly language)とは、


コンピュータ、マイクロコントローラその他のプログラム可能な機器


を動作させるための機械語を人間にわかりやすい形で記述する、


代表的な低水準言語である。




でた。低水準言語 人間にわかりにくい機械が理解しやすい


言葉(プログラミング言語)だ。




アセンブリ言語は人間にわかりやすい形で記述されている低水準言語といっても


C言語に比べれば人間にとってわかりにくい(正確にはわかりやすいが記述に手間がかかる)言語なのです



                         solarplexussより



以下はソーラーの想像の世界のお話です





アセンブリ言語は次のようにできていったんじゃないかな



わくわく 想像すると楽しいね


麗しのアセンブリ


たしか 


機械は機械語とよばれる


010001101100010000111100000

000101001010111010101010101

111111011110111101011111111


こんな感じのプログラミング言語をよみとっているらしい。


0と1だけで構成されたプログラム・・・


人間が書き込むにしても読み取るにしても


0と1しか数値がないから


まぎらわしいんだろうなあ。


ふ~む


そうだ。たとえば1+2をあらわす機械語の仕組みを


仮想で考えてみようかな。


(次の機械語はソーラーが頭の中でかんがえた


1+2をあらわす機械語です。


実際の機械語ではありません。


                solarplexussより)


01 10 01 10 00 00 00 01 00 00 00 

ためしに こんな感じの機械語プログラムを考えてみようかな。


まず最初の01で数字の1を記憶し、


次の10で数字の2を記憶 


さらに次の01 10で+をよびだし、


さらに次の00 00で前に記憶した数字の1をよびだし、


次の00 01で前に記憶した数字の2をよびだし、


次の00 00 00で1と2をたしあわせる・・・・・


あれっっ 自分で考えた機械語だけど意外と結構単純でわかりやすいなーーー


なんでかというと


この00 00にしろ00 00 00にしろ


それは


 🍓もう間違えようがないくらい基本的で単純な命令だから🍓


意味を考える必要もないって感じだね。


え~と

01 10 01 10 00 00 00 01 00 00 00 


のどこで コンピュータは区切りをつけて機械語よみとっているのか?だって?


今は

01

10

01 10

00 00

00 01 

00 00 00


と単語はわかれているけど


01 10 01 10 00 00 00 01 00 00 00 


をみただけでは


このように

01

10

01 10

00 00

00 01 

00 00 00


単語が分かれているなんて 誰にもわからないって?


もしかしたら


01 10

01 10

00 00 00

01 00 

00 00


という単語のあつまりかもしれないって思う?


どうやって


01 10 01 10 00 00 00 01 00 00 00 


コンピュータは


01

10

01 10

00 00

00 01 

00 00 00

とみわけているのか?


そこは僕にもわからないさ\(^o^)/


それは 


  🐦小説 ソーラーさんの楽しい機械語🐣🐤


で 


お話を進めてみたいとおもいます。




ソーラーさん 引っ張りますね



                    solarplexussより


それは おいといて. . . . . . .


じゃあ 


こうしてできた機械語の命令文のあつまりですね。


01 10 01 10 00 00 00 01 00 00 00 


しかし さすがに 人間にとってはわかりにくいよね。


それに 入力しづらい


そこで


人間にも理解しやすく、入力も楽にするために


01=1 10=2 01=+ 

10 00=A 

00 00=F 

01 00=S 

00 00 00 =E


・・・・とかきかえたものが・・・


(👆ここでは理解しやすくするために、仮にこのような


置き換えをおこなっています。)


           (ソーラーの想像上の)アセンブリ言語


なんだね。


機械語の命令文


01 10 01 10 00 00 00 01 00 00 00


(ソーラーの想像上の)アセンブリ言語の命令文


          1 2 A F S E


となるってわけなんだよね。



さらに 発展させたアセンブリ言語では


人間にわかりやすいように


足し算をあらわす 


この アセンブリ言語の命令文


1 2 A F S E



さらに 人間にとってわかりやすく


1+2


と簡単に表記できるようになる。


第2アセンブリ言語の完成ってわけだね。


ふう、美しい


でも


機械語のほうがシンプルでわかりやすいところもあるなあ・・・・


なぜって ?


だって 機械語はひとつひとつの本当に単純な


誰でもわかる命令を積み重ねて


命令文を作製していく。


一見すると 0と1のあつまりで紛らわしくみえても


実はとても簡単な命令のあつまりだと思うから。


機械語の命令文を


人間にわかりやすいようにまとめるほど


その命令文により


コンピュータの中で


何がおこっているのかわかりにくくなっていく


printf("10");


といっても


実際にどのように コンピュータに命令が下されているかは


まったく わからないんだよねぇ。

  • Twitterで共有
  • Facebookで共有
  • はてなブックマークでブックマーク

作者を応援しよう!

ハートをクリックで、簡単に応援の気持ちを伝えられます。(ログインが必要です)

応援したユーザー

応援すると応援コメントも書けます

新規登録で充実の読書を

マイページ
読書の状況から作品を自動で分類して簡単に管理できる
小説の未読話数がひと目でわかり前回の続きから読める
フォローしたユーザーの活動を追える
通知
小説の更新や作者の新作の情報を受け取れる
閲覧履歴
以前読んだ小説が一覧で見つけやすい
新規ユーザー登録無料

アカウントをお持ちの方はログイン

カクヨムで可能な読書体験をくわしく知る