• 締切済み

低水準言語について。

低水準言語があるのは、例えば、この人は、これができた。あの人は、これができた。しかし、一つだけできたのでは、意味がないから、それを総称(合併)して、アセンブリ言語という名前になった。で、 アセンブリ言語がなければ、C言語などの高水準言語は、誕生していなかった。という事で、合っていますでしょうか?教えていただけないでしょうか?すみません。

みんなの回答

noname#252929
noname#252929
回答No.3

考え方が違うんですよね。 CPUを動かすためには、マシン語が必要であり、そのマシン後は16進の文字列だけで作られています。 そのマシン語ではただの命令の番号でしかありませんので人間には理解がしにくい。 だから、その命令の番号を、わかりやすい文字に対応させたのが、アセンブラ。 その命令を数十から数百個まとめて一つの命令で処理できる様にしたのが中、高級言語。 高級言語を作るために低級言語が作られたのでは無く、低級言語をより使いやすくまとめてセット化したのが中級や高級言語。 アセンブラやマシン語の勉強をすればすぐに理解できますよ。 アセンブラがなければ、Cなどが生まれなかったのでは無くそもそもCPUのプログラミングが難しかったから作られたのです。 Cなどのコンパイラは、アセンブラで作られたりしていますが、直接マシン語で作る事だって可能です。

  • q4330
  • ベストアンサー率27% (767/2786)
回答No.2

コンピュータができたときはCPUが扱えるマシン語しかなかった 1010 0000 0000 0000 1010 0001 0000 0010 この様な命令を紙テープにパンチし ●〇●〇 〇〇〇〇 〇〇〇〇 〇〇〇〇 ●〇●〇 〇〇〇● 〇〇〇〇 〇〇●〇 この様にパンチしてこれをCPUに読み込ませた しかし、これでは人間が命令を理解できないから、命令を描いたニームニックをマシン語に変換するソフトを作り Clear R0 Move R1 R2 の様にタイプすれば1010 0000 0000 0000 1010 0001 0000 0010と変換するソフトを作った、これがアッセンブラーと呼ばれるソフトで「Clear R0」の様な表記をする言語をアッセンブリ言語と言う その後、アッセンブリ言語を利用してFORTRANやCOBOLの言語が開発され、B言語やC言語、TRONなど用途に合った言語が開発された。

  • t_ohta
  • ベストアンサー率38% (5081/13277)
回答No.1

はじめてCPUが作られた時はマシン語しかありませんでした。 二進数や十六進数の羅列では可読性が悪くプログラミング効率が悪いので、もう少し判りやすくするためにアセンブラが開発されました。 CPUが高性能化し機能が増えるとアセンブラではプログラミング効率が悪いので新たな言語が考案され、その言語で作られたプログラム実行するためのインタープリタやコンパイラが開発されました。 より複雑な仕事をコンピュータにさせるためのプログラミング手法や概念が考案され、それを実現するためにより使い勝手のいいプログラミング言語が開発され、どんどん高水準化していきました。

関連するQ&A

  • アセンブリ言語についてと言語の違いについて。

    高水準と低水準言語の違いは、まず、マシン語の2進数の羅列では分からないからアセンブリ言語が生まれ、 アセンブリ言語よりさらに人間が理解できる言語が、C言語やBASICなどでしょうか?教えていただけないでしょうか?合っていますでしょうか?

  • アセンブリ言語を学ぶことは意味がありますでしょうか。

    アセンブリ言語を学ぶことは意味がありますでしょうか。 プログラミングの上達や理解を深めるためにアセンブリ言語を学ぶ意味はありますでしょうか。 C++を学ぶとプログラミングの上達や理解は確かに深まりましたが、アセンブリ言語はどうでしょうか。 アセンブリ言語でポインタの意味が分かったと言う人もいますし・・・。 また、アセンブリ言語で役立つことがあれば何でも教えてください。

  • アセンブリ言語について。

    2進数の羅列では人間にはあまりに読み書きしにくいからです。 それを命令単位に区切って、英単語を元にした名前を与えたのが、アセンブリ言語です。 ニーモニックとは、その命令の名前の事です。とはどういう事でしょうか?教えていただけないでしょうか?すみません。 push %ebp mov %esp,%ebp and $0xfffffff0,%esp sub $0x10,%esp mov 0xc(%ebp),%esp : というプログラムで、オペランドが、%ebpなどがそうなのでしょうか?で、このプログラム言語自体をアセンブリ言語というのでしょうか?また、なぜ、低水準言語というのが存在しているのでしょうか?教えていただけないでしょうか?すみません。

  • アセンブリ言語について

    アセンブリ言語の勉強をしたいと思っています。 例えば、CやJava,などはコンパイラを使ってコンパイルをしますよねぇ。同じようにアセンブり言語にもアセンブラというものがあるのでしょうか? フリーでそのようなアセンブラ(コンパイラ?)があるのなら教えてくれないでしょうか?できれば、AT互換のアセンブリ言語の仕様書が書かれているサイトでもあれば教えてください。(できれば、日本語で・・・) それと アセンブラ言語を高水準言語と比較した場合の利点について教えてください。 色々とすいません。どうかよろしくお願いします。

  • アセンブリ言語について。

    アセンブリ言語という低水準言語は、なぜ必要なのでしょうか?それと、ニーモニックとは何でしょうか?ご教授いただけないでしょうか?すみません。

  • アセンブリ言語について。

    アセンブリ言語という低水準言語は、なぜ必要なのでしょうか?それと、ニーモニックとは何でしょうか?ご教授いただけないでしょうか?すみません。よろしくお願いします。

  • アセンブリ言語とC言語

    アセンブリ言語とC言語について調べているのですが、この二つ言語のプログラムについて実質的に同じと言えることはなんでしょうか? また異なっていることはなんでしょうか?(たとえばアセンブリは低級言語であり、C言語は高級言語であるなどなんでもいいです。) 是非解答お願いします。

  • プログラム言語って何があるの?

    私、プログラム言語について調べています。 ウィキペディアをみてもたくさんあって、そこからまたリンクがたくさんあってどこでどのように区切っていいのか分かりません。そこで皆さんに質問したいのですが、プログラム言語はどのようなものがありますか? 大まかにプログラム言語の総称があってその次に (1)機械語(マシン語) (2)アセンブラ言語 高水準言語これの中に (3)インタプリタ言語 (4)コンパイラ言語がありますが、 (1)~(4)のそれぞれの詳細を教えてください。例:BASIC、C等 またこの枠に入らないプログラム言語がありましたら教えてください。 とってもマイナーなものでも構いません。出来ればURL欲しいです。 お願いします。m(_ _)m

  • C言語をCPUに読み込ませるためには、 C言語か

    C言語をCPUに読み込ませるためには、 C言語からアセンブリ言語にコンパイルして、 アセンブリ言語からアセンブルして機械語2進数にしてCPUに読み込ませるという 2段階をしないといけないんですか? 下記の画像のように説明している動画がありました

  • [C言語→アセンブリ言語]はどうするのですか?

    C言語でプログラムを作って、それをアセンブリ言語に変換したいのですが、どうしたらよいでしょうか?