A 回答 (5件)
- 最新から表示
- 回答順に表示
No.5
- 回答日時:
二モニックの部分だけ。
8080 だと レジスタAに5を代入するコードは
3E 05 (16進数 2バイト)
だけど、人間にはきついので
MVI A 05H
とテキストで記述するとアセンブラが
3E 05
に翻訳してくれます。
MVI Aは Move Immediate to A
の略で、即値をレジスタAに代入せよ
という命令 3E に対応します。
#即値とはこの場合2バイト目の05のこと。
つまり、マシン語の命令に付けた
人が解る名前を ニモニック と呼んでます。
本来の意味は「記憶の助けになるもの」
No.4
- 回答日時:
Re: 回答No.2
> CPUをスリープ状態にするHLT命令はアセンブラ…合っていますでしょうか?
そうです。CPUを直接コントロールできるのはアセンブラです。
No.3
- 回答日時:
こんばんは。
んー。昔だったらハードウェアの能力をフルに使う為に、高級言語
という通訳を間に入れずにコンピュータが理解しやすい言語で実行
する、という目的があったんですけど(ファミコン、メガドライブ
あたりはアセンブラ必須でした)、今じゃコンピュータが複雑になっ
ていてフルに使おうと人間が考えるより、高級言語で通訳した方が
手っ取り早い、というのが実情でしょうね。
でも今でも組み込み系とかはアセンブラが必須な事が多いですし、
高級言語の通訳コストを減らしたいなんていう場合は、アセンブラ
の考え方を理解できていないとお手上げになりがちなので、プログ
ラマを名乗るならアセンブラを学ぶべきいだ、とか言われたりしま
す。
ニーモニックはアセンブラから機械語に変換する為の記号、ですか
ね。
ちなみに、今、ファミコンやメガドライブの新作ソフトをリリース
するためにアセンブラは必要だ、なんていうひねくれた回答は可能
です。今でも本当に微々たる量ですが、新作ソフトがリリースされ
ているので。。アセンブラが出来るかというか「今それらで作ろう」
という声が出る事自体がおかしいと個人的には思うのですが。
CPUを直接操作するうなプログラムは高水準言語では作れないので低水準言語が必要になります。
CPUをスリープ状態にするHLT命令はアセンブラにはありますがC言語などの高水準言語には無い機能ですから、アセンブラを使ってプログラムを書かないと実現できません。というのは、合っていますでしょうか?教えていただけないでしょうか?すみません。
No.2
- 回答日時:
アセンブリ言語(アセンブラ)は、コンピュータが直接解釈・実行できる機械語(マシン語)に置き換えられるソフトウェア言語です。
ニーモニックはアセンブリ言語を覚えやすくした命令語で、たとえばデータを読み込むときはLD(Load)、データを保存するときはST(Store)、データを移すときはMOV(Move)のような記号にしたものです。(LD、ST、MOVなどのニーモニックはアセンブリ言語によって多少は違います)。
アセンブリ言語はソフトウェア言語のもっとも基本にあるものなので、BASIC、COBOL、FORTRAN、C++のような高級な言語を理解するためには知っておくと役に立ちます。
またソフトウェアによってコンピュータ内部のハードウェアがビット単位やバイト単位でどう動くか(レジスターの動作)を把握し解析し追跡できるようにするためには、アセンブリ言語や機械語の理解がなければできません。
アセンブリ言語(あるいは機械語)はハードウェアとソフトウェアの両方の動きを関連付けて理解するのに欠かせません(ハードウェアとソフトウェアの両方を結びつけるもっとも基本的な原始的な言語です)。
電子工学をやってきた私自身は基本的にはハードウェアが専門でしたが、コンピュータ(当時はミニコンピュータ)を動かすためにはアセンブリ言語(あるいは機械語)が使えないと仕事にはなりませんでした。
CPUを直接操作するうなプログラムは高水準言語では作れないので低水準言語が必要になります。
CPUをスリープ状態にするHLT命令はアセンブラにはありますがC言語などの高水準言語には無い機能ですから、アセンブラを使ってプログラムを書かないと実現できません。というのは、合っていますでしょうか?教えていただけないでしょうか?すみません。
No.1
- 回答日時:
機械語はただの数値の羅列ですので、その数値をわかりやすいように(アルファベットで)記述することがニーモニックであり、それがアセンブラです。
高級言語で記述しても、コンパイルすることにより機械語に翻訳されます。デバッグするときには機械語(またはニーモニック表示したもの)でしか見れません。そのため、機械語レベルでのデバッグのために、アセンブラの知識が必要なのです。CPUを直接操作するうなプログラムは高水準言語では作れないので低水準言語が必要になります。
CPUをスリープ状態にするHLT命令はアセンブラにはありますがC言語などの高水準言語には無い機能ですから、アセンブラを使ってプログラムを書かないと実現できません。というのは、合っていますでしょうか?教えていただけないでしょうか?すみません。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
- ・漫画をレンタルでお得に読める!
- ・人生のプチ美学を教えてください!!
- ・10秒目をつむったら…
- ・あなたの習慣について教えてください!!
- ・牛、豚、鶏、どれか一つ食べられなくなるとしたら?
- ・【大喜利】【投稿~9/18】 おとぎ話『桃太郎』の知られざるエピソード
- ・街中で見かけて「グッときた人」の思い出
- ・「一気に最後まで読んだ」本、教えて下さい!
- ・幼稚園時代「何組」でしたか?
- ・激凹みから立ち直る方法
- ・1つだけ過去を変えられるとしたら?
- ・【あるあるbot連動企画】あるあるbotに投稿したけど採用されなかったあるある募集
- ・【あるあるbot連動企画】フォロワー20万人のアカウントであなたのあるあるを披露してみませんか?
- ・映画のエンドロール観る派?観ない派?
- ・海外旅行から帰ってきたら、まず何を食べる?
- ・誕生日にもらった意外なもの
- ・天使と悪魔選手権
- ・ちょっと先の未来クイズ第2問
- ・【大喜利】【投稿~9/7】 ロボットの住む世界で流行ってる罰ゲームとは?
- ・推しミネラルウォーターはありますか?
- ・都道府県穴埋めゲーム
- ・この人頭いいなと思ったエピソード
- ・準・究極の選択
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
MIPSアセンブラ言語について
-
汎用レジスタのワーキングビッ...
-
アセンブラのLA
-
アセンブラからC言語に変換する...
-
PICに書き込むプログラムや変数...
-
ライン数とステップ数の違いは?
-
素朴な疑問 (C言語とアセン...
-
このアセンブラの意味を教えて...
-
フリーの6502アセンブラ
-
アセンブラ(アセンブリ)の何か...
-
組み込み系C言語の学習法
-
アセンブラの学習法
-
解析魔法少女を読んだ方に質問
-
アセンブラのコマンドについて
-
組み込みソフトのわかりやすい...
-
アセンブラエディタ
-
アセンブラの擬似命令について
-
0xffffとは?
-
8ビットのデータの、先頭ビット...
-
エクセルVBAのIf,Then 構...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
アセンブラからC言語に変換する...
-
ライン数とステップ数の違いは?
-
実行ファイルからソースはみれる?
-
PC-9801でマシン語を学習するに...
-
[C言語→アセンブリ言語]はどう...
-
void __cdeclなど_
-
アセンブラwordという単位
-
アセンブラ言語がわかりません。
-
バイナリの実行ファイルをgccを...
-
SHの命令の意味について
-
PC-9801 MS-DOSでの実行ファイ...
-
アセンブラエディタ
-
PICに書き込むプログラムや変数...
-
PICのアセンブラからC言語へ変...
-
アセンブラのLA
-
【H8マイコン】HEWで埋め込みア...
-
ニーモニックコードを使って割...
-
7セグメントLEDの点灯について
-
アセンブラのコマンドについて
-
MASMの機種依存についてお尋ね...
おすすめ情報