ログイン
kid's world

プログラミング言語とは

プログラミング言語とは

ではさっそく,本題に入ろう。

プログラミング言語とは何だろう?

簡単にいうと,プログラムを作るための言語のことである。コンピュータはプログラムを読み込んでそのとおりに実行することで,数々の複雑な処理をやってのけてくれる。人間の会話で用いられる言語が,日本語,英語,フランス語,ドイツ語などと多くの種類があるように,プログラミング言語にもさまざまな種類が存在する。これから学ぶC言語も,先ほど出てきたPerlやPascalなどもプログラミング言語の1つである。

いろいろなプログラミング言語

……おっと,上司から緊急指令だ。

今すぐに「愛してる!」と画面に表示するプログラムを作れ!

「いったい何に使うんだ???」,という疑問はここでは抱いてはならない! あなたが考えてよいことは,「愛してる!」と表示させるプログラムをどうしたら作ることができるのかということだけである!

……といっても,すぐにそんなことがわかるようなら,この連載の存在意義が問われる。わからなくて当然である。どうやら,本当に緊急であるらしいので,私が先に答えを書いておこう。念のため,C,C++,BASIC,Java,Pascalの5つの言語で書いておく(List 1〜5)。

List 1: Cで愛してる!

#include <stdio.h>

main()
{
  printf("愛してる!\n");
}

List 2: C++で愛してる!

#include <iostream>
using namespace std;

void main()
{
  cout << "愛してる!" << endl;
}

List 3: BASICで愛してる!

10 PRINT "愛してる!"

List 4: Javaで愛してる!

public class Love
{
  public static void main(String[] args)
  {
    System.out.println("愛してる!");
  }
}

List 5: Pascalで愛してる!

program Love;
begin
  writeln('愛してる!');
end.

「今どきのコンピュータはこんなにいろいろな言葉を理解できるのか,頭がいいんだな〜」と思われたのではないだろうか。たしかにそうだ。最近はこれ以外にも,新しい言語がどんどんと出現してきている。

しかし,実はコンピュータそのものがこれらのプログラミング言語を直接的に理解しているわけではない。コンピュータは今も昔も変わらずおバカさんだ。というのも,コンピュータは,たった1つの言葉しか理解していない。その名も「機械語」(「マシン語」ともいう)である。よって,どんなプログラミング言語も,最終的には必ず機械語に翻訳されているのだ(Fig. 1)。

Fig. 1 すべては機械語に翻訳される

/c/basic-fig1.png

ということは,「機械語さえマスターすればOK!」ということになる。たしかに極論すればそうなのであるが,それは現実的ではない。というのは,機械語は非常に単純な命令しかないために,たとえ文字を1文字画面に表示するだけでも,その単純な命令を複雑に組み合わせていく必要がある。結果として1つの実用的なプログラムを構成するためには,何百万という命令の羅列が必要となる。しかも,その命令はすべて無味乾燥な数値である。それを手作業で書いていくのは,はっきりいって無茶だろう。

そこで,人間がパッと見てわかる簡単なプログラミング言語が必要となる。これら人間が使う言語に近いプログラミング言語を「高水準言語」などといい,機械語などの言語を「低水準言語」という。これから学習するC言語は高水準言語であり,人間にもわかりやすい言語である。

なお,どのような高水準言語もそのままでは絵に描いた餅であり,これを機械語に翻訳しなければ意味を成さない。じゃあ,結局は機械語の知識も必要で「手作業で翻訳しなければならないのか?」ということになってしまうが,そこは安心していただきたい。「コンパイラ」という,優秀な翻訳プログラムがこの世には存在している。コンパイラに任せてしまえば,アッという間に機械語に翻訳してくれるのだ。だから,私たちはポテトチップス片手にノホホ〜ンとコンピュータに向かい,残された“たいへんな作業”はコンパイラに任せればいいのである。なんと便利な世の中だろうか。


コンパイラの導入」へ進む

広告


©Toshio Koide 1996-2007.

目次

リンクについて

リンクは御自由にどうぞ。

メール

mail.gif

広告