天国にいけるC言語入門 シーズン1 パソコン超初心者がゼロから東方風シューティングをつくる編 ver.0.4.15.789 RELIEF
☆☆☆コンパイラによる10進数から 2進数、2進数から10進数への変換
☆☆☆コンパイラによる10進数から 2進数、2進数から10進数への変換
☆☆☆コンパイラによる10進数から 2進数、2進数から10進数への変換☆☆☆
てんC 「さて コンパイラによって
ソースコードに記述されていた
10進数モンスター数値4198543は
一度
2進数10000000001000010001111に変換され
コンピューターのメモリ内に
おくりこまれ格納されました
そして
この2進数10000000001000010001111は再び
私達が書いたプログラム
#include <stdio.h>
int main(void)
{
printf("%d\n",4198543);
return 0;
}
の命令によって
コマンドプロンプト画面に
10進数に戻され4198543となって表示されるわけです。」
ぶーにゃん 「ね、ね、てんCちゃん、ということは
コンパイラプログラムには
ソースコードに記述された10進数の数値をコンピュータ
の理解できる2進数にかえる仕組みがあるにゃんね。」
てんC 「そうなのです
もともと
コンピュータはソースコード
(私達が書いたプログラム)
#include <stdio.h>
int main(void)
{
printf("%d\n",4198543);
return 0;
}
自体は理解できませんからね。
えっ もっとわかり易くですか?
みなさんとお話できて私も嬉しいです。
では
別の言い方をすると
エディタ上の10進数4198543を
2進数10000000001000010001111に変換までは
コンパイラが行わなければ
コンピュータは10進数4198543を認識できません。
ではどうでしょうか?」
ぶーにゃん 「もっと お客さんがお話を
わかり易くお願いした~いって てんCちゃん。」
てんC 「えっそうなんですか?」
お客さんの反応に喜ぶてんC。
てんC 「それでは!
エディタ上の10進数を2進数に変換までは
コンパイラが行わなければ!・・・」
ぶーにゃん
「エディタ上の10進数を2進数に変換までは
コンパイラが行わにゃければ~~~~~~」
てんC
「4198543という数字をコンピュータは理解できません。」
ぶーにゃん
「4198543という数字をコンピュータは理解できにゃ~いにゃ~ん。」
むしゃっむしゃっ
てんC
「なぜなら それは~~~♪♪♪♪♪」
ぶーにゃん
「にゃぜなら それは~~~♪♪♪♪♪」
てんC 「10進数から 2進数へと~~~♪♪♪♪♪
♪♪♪♪♪ららら♪♪♪♪♪二人だけの世界~~~~~
♪♪♪♪♪ららら~~~~~♪♪♪♪♪」
ぶーにゃん
「幸せな世界~~~♪♪♪♪♪」
てんC
「そこには~~~言葉がなくとも~~~♪♪♪♪♪」
ぶーにゃん
「わかりあう♪♪♪♪♪二人の世界~~~♪♪♪♪♪~~~」
てんC
「それは まるで~~~♪♪♪♪♪~~~」
ぶーにゃん
「陽だまりのなかにいるかのよう~~~~~~~~♪♪♪♪♪
にゃ~~~ん~~~」
てんC「それは~それは~幸せな世界~~~♪♪♪♪♪」
ぶーにゃん 「幸せな世界~~~♪♪♪♪♪」
てんC 「ぶーにゃんさん お解りいただけましたか?」
ぶーにゃん 「いやっ ぜんぜんわからないにゃん。
そこは
エディタ上の10進数4198543を
2進数10000000001000010001111に変換までは
コンパイラが行わなければ
コンピュータは10進数4198543を認識できません。
なぜなら
コンピュータちゃんは0と1
であらわされた機械語しか理解できないからにゃん。
とつづくにゃ~んよ。」
てんC 「あっあら?あらららら?
そうなんで~す。」
てんC
「はい(^^)
そのようにして
コンパイラによって
エディタ上のソースコードに記述された10進数は2進数に変換され
コンピュータのメモリに格納されます。
そしてメモリに格納された2進数がprintf関数によって操作を受け
コマンドプロンプト画面に
10進数に戻され表示されるわけですが・・・」
ぶーにゃん
「はい(^^)/」
てんC
「コンパイラによって
エディタ上のソースコードに記述された10進数は2進数に変換され
コンピュータのメモリに格納されてから
メモリに格納された2進数がprintf関数によって操作を受け
コマンドプロンプト画面に
10進数に戻され表示されるわけですが・・・」
ぶーにゃん「にゃ~」
てんC
「10進数に戻され表示されるのですが・・・」
ぶーにゃん
「はい、せんせーい(^^)/」
てんC 「はい(^^) ぶーにゃんさん。」
ぶーにゃん
「コンパイラプログラムがコンピュータのメモリに格納された
2進数を10進数に戻して表示するための
機械語プログラムを作成してるのかにゃ?」
(てんCちゃん
うちは自分でもにゃにいってるかわからにゃあいにゃ~~ん
わかりやすくしてみて(^^) お客さんもよろこぶにゃ~ん
おねがいにゃ)
(はいはいっ)
てんC「つまりソースコード
#include <stdio.h>
int main(void)
{
printf("%d\n",4198543);
return 0;
}
をコンパイルしたときに
コンパイラ(プログラム)が
🍓ソースコードの10進数から2進数に翻訳され
コンピュータのメモリにおくりこまれた2進数🍓
を再び10進数に戻して
コマンドプロンプト画面に表示するための
機械語プログラムもつくっているかどうか・・・ということですか?」
ぶーにゃん 「てんCちゃん だいぶちかい感じ・・・
もうすこしっ」
(今日は楽しいにゃんね。)
てんC
(わたしもたくさんみなさんと お話できて嬉しいです。」
てんC「では
ソースコード
#include <stdio.h>
int main(void)
{
printf("りんごは%d円です。",4198543);
return 0;
}
が実行されると
命令文 printf("りんごは%d円です。",4198543);
により
4198543は2進数10000000001000010001111
に翻訳されてコンピュータのメモリにおくりこまれます。
そして
命令文 printf("りんごは%d円です。",4198543);
には
その
メモリに格納された
2進数10000000001000010001111
を(%d出力変換指定子をもちいて)
10進数4198543に戻して
コマンドプロンプト画面に表示するための命令が含まれています。
コンパイラはその命令も機械語
に翻訳してコンピュータに
伝えているのですね。」
ぶーにゃん 「それっ それっ
ジャスト!フィット!キャット!」
新規登録で充実の読書を
- マイページ
- 読書の状況から作品を自動で分類して簡単に管理できる
- 小説の未読話数がひと目でわかり前回の続きから読める
- フォローしたユーザーの活動を追える
- 通知
- 小説の更新や作者の新作の情報を受け取れる
- 閲覧履歴
- 以前読んだ小説が一覧で見つけやすい
アカウントをお持ちの方はログイン
ビューワー設定
文字サイズ
背景色
フォント
組み方向
機能をオンにすると、画面の下部をタップする度に自動的にスクロールして読み進められます。
応援すると応援コメントも書けます