忍者ブログ
RoboCup Junior Japan Rescue Kanto OB

             2005~2013
[681]  [680]  [679]  [678]  [677]  [676]  [674]  [672]  [671]  [670]  [669
実はそろそろ機械語が読めるようになってきつつあるLuzです。


最近、またASM始めました。

ASM、アセンブラ、どこぞのBrainなんたらよりはマシですが、これもこれで難しい部類の言語ですね。

正式にはアセンブリ言語と呼ぶそうです。テストでアセンブラって書いたら×されました。
アセンブラには「アセンブリ言語を機械語に翻訳するプログラム」という意味を有るそうです。

アセンブリ言語とは所謂C言語等の高級言語と機械が理解する機械語のちょうど中間に位置する言語です。

コンパイルをした先に行き着く言語というのが正しいでしょうか。

アセンブリ言語の特徴は機械語をそのまま人間の読める文字に変換しているだけという点です。

C言語だと、例えば足し算だったら

i=i+j;

という風に、これひとつでなんか色々な処理を行なって、足し算を行なってくれますね。


でもアセンブリ言語の場合は、iという変数の値をメモリから引き出して、jという変数の値をメモリから引き出して、

それでようやく足し算をして結果をメモリの中のiに保存して・・・

という一連の動作が全てバラバラの命令になっています。

つまり、足し算をするだけでもC言語より莫大な量のプログラムを書き込む必要があります。


これがアセンブリ言語です。だから中身は機械語と同じだけど、01の数字を文字に置換しているというだけのものです。

つまり・・・命令文は複雑になってややこしくはなるけど、

その分かなり細かいところまでプログラムをいじることができるという訳です。

だから簡単に言うと、ROBOLABからC、に移行した際に、プログラムの設定を細かく行なうこと出来たという経験。

Cとアセンブリ言語の違いはアレと同じ感覚ですね。



で、僕は以前興味本意でコイツに手をつけたことがあるのですが、結局面倒になって、またCに戻ってきていたのですね。
I2Cの時は死ぬかと思った・・・。

で、それから何年か経って、今度はアセンブリ言語の需要が生まれてしまったのです。

要するに前回はやる必要性がなかったのでテキトーだったけど、今回はやらねばなるまい。ということです。


という訳でテスト期間中にも関わらず、こうしアセンブリ言語と格闘しているわけです。

時の流れって怖い。完全に忘れてますねー。


そんな感じで今日の記事はこの辺で。

あれ?今日だと思ったら明日になってる?あれ?今日が明日で、だけど今日は今日で・・・?


(^・ω・)ノ RadiumProduction in RoboCup Junior
Comments
※コメントは内容確認後に手動で公開するようにしております。反映までしばらくお待ちください。
Your Name
Title
color
URL
Comment
 

カレンダー
10 2019/11 12
S M T W T F S
1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30
最新CM
[06/08 ONE RoboCuper]
[01/24 sk]
[09/25 ONE RoboCuper]
[11/19 big]
[11/11 お馬さん]
かうんた
らじぷろ目次
らじぷろ検索機
プロフィール
HN:
Luz
年齢:
25
性別:
男性
誕生日:
1994/02/15
職業:
大学生
趣味:
ラボ畜
自己紹介:
初めまして。Luzと申します。
某大学の情報学科に入りました。のんびりと生活を送るのが今年の夢です。
めーる
radiumproduction☆yahoo.co.jp
※☆を@に変更して下さい。
バーコード

PR

忍者ブログ 2007-2018,Powered by Radium-Luz-Lα+-Rescatar in RadiumProduction [PR]


Related Posts Plugin for WordPress, Blogger...