• ベストアンサー

機械語?

適当なexeファイルをエディタで開いてみたときに、 ・・P毅 ミー 記$ d・ ↑このようなめちゃくちゃな文字が出てくるのですが、 これは機械語というものなのでしょうか? 調べたら、機械語は2進数(0,1)か16進数(0~9とa~f)で できているとどこかに書いてあったのですが、 上のような漢字を含む機械語もあるのでしょうか?それともべつなものなのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • koko_u_
  • ベストアンサー率18% (459/2509)
回答No.1

普通のエディタは 0 と 1 の並びを「文字列」と解釈するので、そう見えるだけです。 バイナリエディタで見ましょう。(見てどうというわけでもないでしょうが)

jackstraw
質問者

お礼

解答ありがとうございます。 機械語をみるためのエディタで開けばよかったのですね、、、 勉強になりました。 ありがとうございます!

その他の回答 (2)

  • okg00
  • ベストアンサー率39% (1322/3338)
回答No.3

そうです。しかし、厳密にはOSに対応した言語といえるかもしれません。 で、漢字になったのは偶然です。実際はバイナリファイルとして書き込まれています。それを16進数にして漢字コードに対応させるとたまたま漢字だったというだけです。 http://ash.jp/code/codetbl2.htm http://www.geocities.co.jp/SiliconValley-SanJose/5780/data-07.html

jackstraw
質問者

お礼

解答ありがとうございます。 テキストエディタで開いたので16進数を“漢字”などで 表示してしまったということがはっきりわかりました。 どうもありがとうございます。

  • momo164
  • ベストアンサー率48% (38/79)
回答No.2

はじめまして、jackstrawさん  正直まったく違いますし、勘違いもしています。  マシン語とは、そのCPUなどに実際に使用する際に電気で動いてるので 0と1しか認識が出来ません、基本的に見やすくするために16進数を利用 しますが、どうしてもマイナス等の領域で10進数では対応が出来ない場合があるので 2進数>4進数>8進数>16進数と順序で構成されています。 マシン語とは、機械が直接理解できる状態の言葉だと思ってください あと、本当に16進数でプログラムなんて組めませんので、アセンブラ などで実際組んでいますし、その内容もCPUの対応する内容で構成しないと動きません。 ※どうして漢字が表示されたか EXEを無理やり開いた件ですが、16進数で構成されたファイルを無理やり 開いたために、文字になってます。漢字はコードが偶然漢字コードがはまった だけです。

jackstraw
質問者

お礼

解答ありがとうございます。 >>マシン語とは、そのCPUなどに実際に使用する際に電気で動いてるので0と1しか認識が出来ません。 >>基本的に見やすくするために16進数を利用 しますが、どうしてもマイナス等の領域で10進数では対応が出来ない場合があるので 2進数>4進数>8進数>16進数と順序で構成されています。 もともと機械語というものは0と1でできていて、見やすくするために2,4,8、16進数を使うこともあると理解しました、、、 >>漢字はコードが偶然漢字コードがはまっただけです。 なるほど、漢字にぜんぜん意味はないのですね。 ご指摘ありがとうございます。 とても参考になりました。

関連するQ&A