坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる...

76
ハロー・ワールド ハロー・ワールド 入門 入門 坂井弘亮 坂井弘亮 (KOZOSプロジェクト プロジェクト )

Transcript of 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる...

Page 1: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ハロー・ワールドハロー・ワールド入門入門

坂井弘亮坂井弘亮(KOZOSプロジェクトプロジェクト)

Page 2: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

早速ですが早速ですが早速ですが早速ですが早速ですが早速ですが早速ですが早速ですが

Page 3: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

バイナリカレンダーバイナリカレンダー2015 ありますあります

http://kozos.jp/

Page 4: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

バイナリカレンダーバイナリカレンダーとは何か?とは何か?

Page 5: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

普通のカレンダー:風景や人物がテーマ普通のカレンダー:風景や人物がテーマ

バイナリカレンダー:バイナリダンプがテーマバイナリカレンダー:バイナリダンプがテーマ

Page 6: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

普通のカレンダー:風景や人物がテーマ普通のカレンダー:風景や人物がテーマ

バイナリカレンダー:バイナリダンプがテーマバイナリカレンダー:バイナリダンプがテーマ

近年のデジタル世代のためのカレンダー近年のデジタル世代のためのカレンダー

Page 7: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

こんな感じですこんな感じです

Page 8: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて
Page 9: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

バイナリダンプバイナリダンプ(x86-64機械語機械語)

日付日付(もちろんもちろん16進数進数)

<-- 西暦西暦(もちろんもちろん16進数進数)

Page 10: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

実物実物

Page 11: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて
Page 12: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

拡大拡大

Page 13: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

リビングに飾るとリビングに飾ると こんな感じこんな感じ

Page 14: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて
Page 15: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

バイナリバイナリ カレンダーカレンダー (サーバ版サーバ版)

Page 16: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(サーバ版なのでサーバ版なので) ジュリアンジュリアン デート付きデート付き

(もちろんもちろん16進進)

Page 17: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

アーキテクチャ一覧アーキテクチャ一覧1月:Alpha 7月:VAX2月:PowerPC8月:S/3903月:SPARC 9月:SH644月:PA-RISC 10月:MMIX5月:IA-64 11月:PDP-116月:x86-64 12月:680x0

(えっそれってサーバじゃないでしょ的なアーキも入っています.えっそれってサーバじゃないでしょ的なアーキも入っています. ごめんアーキ足りなかったのでごめんアーキ足りなかったので64ビットアーキとか適当に入れましたビットアーキとか適当に入れました)

Page 18: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

そんなの興味無いよというそんなの興味無いよという かたもいるかと思うのですがかたもいるかと思うのですが

Page 19: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

そんな一部のかたにそんな一部のかたに 朗報です朗報です

Page 20: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

今年は今年は マイコン版もマイコン版も ありますあります

Page 21: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

マイコン版ではマイコン版では 2進数2進数 表記付き表記付き

Page 22: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

アーキテクチャ一覧アーキテクチャ一覧1月:AVR 7月:RL782月:SH 8月:V8503月:MicroBlaze9月:i9604月:ARM 10月:Thumb5月:FR-V 11月:Blackfin6月:68HC11 12月:MIPS16

Page 23: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ここでここで 7月31日に注目7月31日に注目

Page 24: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて
Page 25: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

7月7月31日は日は 2進数では2進数では

111月月 11111日日

Page 26: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

11月月11日を日を バイナリの日とするバイナリの日とする 考えがあるようですが考えがあるようですが

Page 27: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

7月月31日こそ日こそ バイナリの日にふさわしいバイナリの日にふさわしい

Page 28: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

7月月31日こそ日こそ バイナリの日にふさわしいバイナリの日にふさわしい(新歴でのバイナリの日新歴でのバイナリの日)

Page 29: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

バイナリカレンダーにバイナリカレンダーに ついてはついては こちらを参照こちらを参照

Page 30: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

「バイナリで遊ぼう!」「バイナリで遊ぼう!」

Page 31: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

おそらく昨年出た技術書のおそらく昨年出た技術書の 中で2番目くらいに変な本中で2番目くらいに変な本

(自己評価自己評価)

Page 32: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

おそらく昨年出た技術書のおそらく昨年出た技術書の 中で2番目くらいに変な本中で2番目くらいに変な本

(自己評価自己評価)

一番はたぶんこれ一番はたぶんこれ 「アセンブラ短歌の世界」「アセンブラ短歌の世界」

Page 33: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

斜め上を行くような斜め上を行くような 本ばかり書いてるような本ばかり書いてるような

(気のせい?気のせい?)

Page 34: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

そんなわけでそんなわけで今年の目標今年の目標

Page 35: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

マニアックな本はマニアックな本は もう卒業だ!もう卒業だ!今年こそは今年こそは

一般向け・入門者向けの一般向け・入門者向けの 本を書いてみたい!本を書いてみたい!

Page 36: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

万人ウケする本を書いて万人ウケする本を書いて ヒットを飛ばしたい!ヒットを飛ばしたい!

それにはやっぱり入門書だ!それにはやっぱり入門書だ!

Page 37: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

入門書と言えば入門書と言えば これですよねこれですよね

Page 38: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

#include <stdio.h>

int main(){ printf("Hello World!¥n"); return 0;}

Page 39: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

実行結果実行結果

Page 40: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

Hello World!

Page 41: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

いわゆるいわゆる 「ハロー・ワールド」「ハロー・ワールド」

Page 42: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ハロー・ワールドについてハロー・ワールドについて たまに言われることたまに言われること

Page 43: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

「このプログラムについて「このプログラムについて レポートを書けと言われればレポートを書けと言われれば A4用紙で5枚でも6枚でもA4用紙で5枚でも6枚でも

書ける!」書ける!」 (要するに奥が深い要するに奥が深い)

Page 44: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

それほど奥が深いそれほど奥が深い「ハロー・ワールド」「ハロー・ワールド」

ですがですが

Page 45: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

だったらハロー・ワールドだけでだったらハロー・ワールドだけで 1冊の本が書けるんじゃないかと1冊の本が書けるんじゃないかと

Page 46: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ということでということで 今書いている本今書いている本

Page 47: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

「ハロー・ワールド入門」「ハロー・ワールド入門」

Page 48: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

「ハロー・ワールド入門」とは何か「ハロー・ワールド入門」とは何か

300ページページ(予定予定)に渡ってに渡って ハロー・ワールド「だけ」についてハロー・ワールド「だけ」について

延々と説明してある延々と説明してある ハロー・ワールドの入門書ハロー・ワールドの入門書

(つまりつまりK&Rの前に読むべきの前に読むべき)

Page 49: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

誰もが書いたことのある誰もが書いたことのある 「ハロー・ワールド」「ハロー・ワールド」 を題材にしているのでを題材にしているので

Page 50: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

これが万人ウケこれが万人ウケ しないはずが無い!しないはずが無い!

Page 51: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

注意注意

Page 52: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

「ハロー・ワールド」の「ハロー・ワールド」の入門書です入門書です

「ハロー・ワールド」から始まる「ハロー・ワールド」から始まる C言語の入門書ではありませんC言語の入門書ではありません

Page 53: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

出てくるプログラムの出てくるプログラムの リストはもちろんリストはもちろん これだけですこれだけです

Page 54: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

#include <stdio.h>

int main(){ printf("Hello World!¥n"); return 0;}

Page 55: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

概要概要

Page 56: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第1章第1章「ハロー・ワールドを「ハロー・ワールドを 動的解析してみよう」動的解析してみよう」

Page 57: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)ハロー・ワールドの動作をデバッガでハロー・ワールドの動作をデバッガで 追いかけて追いかけてprintf()の中までの中まで

入って解析して入って解析して (デバッグ情報が付いてないのでデバッグ情報が付いてないので もちろんアセンブラレベルでもちろんアセンブラレベルで)

writeシステムコールのシステムコールの 呼び出しまで動的解析してみる呼び出しまで動的解析してみる

Page 58: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第2章第2章「「main()が呼ばれる前とが呼ばれる前と

main()から返る先をから返る先を 解析しよう」解析しよう」

Page 59: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)main()関数が呼ばれる前のスタート関数が呼ばれる前のスタート アップとアップとmain()関数から戻った後の関数から戻った後の

_exit()までの処理をデバッガとまでの処理をデバッガと 逆アセンブラを駆使して解析逆アセンブラを駆使して解析 (もちろんアセンブラレベルでもちろんアセンブラレベルで)

Page 60: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第3章第3章「標準ストリームの処理を「標準ストリームの処理を

解析しよう」解析しよう」

Page 61: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)printf()系のライブラリ関数の系のライブラリ関数の ストリーム処理を,ストリーム処理を,glibcのの ソースを読んでひたすら解析ソースを読んでひたすら解析

してしてwrite()されるまでにどのようなされるまでにどのような バッファリング処理が行われてバッファリング処理が行われて

いるのかを知るいるのかを知る

Page 62: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第4章第4章「可変長引数の処理を「可変長引数の処理を

解析しよう」解析しよう」

Page 63: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)printf()の可変長引数の処理のの可変長引数の処理の 実現方法を,逆アセンブルした実現方法を,逆アセンブルした 結果をベースにして解析して結果をベースにして解析して アセンブラレベルで理解するアセンブラレベルで理解する

Page 64: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第5章第5章「プログラムの実行処理を「プログラムの実行処理を

解析しよう」解析しよう」

Page 65: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)プログラムの起動時に行われるプログラムの起動時に行われる 処理の内容を処理の内容をLinuxカーネルのカーネルの ソースコードを読んでソースコードを読んでexecve() システムコールの処理を読んでシステムコールの処理を読んで

理解する理解する

Page 66: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第6章第6章「コンパイルと「コンパイルと

プリプロセッサの処理」プリプロセッサの処理」

Page 67: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)コンパイル時のログを見てコンパイル時のログを見て

コンパイルオプションや最適化,コンパイルオプションや最適化, stdio.hのインクルード処理やのインクルード処理や プリプロセッサの処理を知り,プリプロセッサの処理を知り, コンパイル時に何が行われてコンパイル時に何が行われて いるのかやライブラリの構成をいるのかやライブラリの構成を

具体的に理解する具体的に理解する

Page 68: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

第7章第7章「様々なアーキテクチャでの「様々なアーキテクチャでの ハロー・ワールド」ハロー・ワールド」

Page 69: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

(内容内容)x86ややLinux以外の様々な以外の様々な アーキテクチャや環境アーキテクチャや環境

(各種各種RISCアーキやマイコンなどアーキやマイコンなど) でのハロー・ワールドをでのハロー・ワールドを

エミュレータ等を用いて検証しエミュレータ等を用いて検証し アーキや環境ごとの特徴を知るアーキや環境ごとの特徴を知る

Page 70: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ハロー・ワールドを知ることでハロー・ワールドを知ることで コンパイラが何をやっているのかコンパイラが何をやっているのか とかプログラムがどうやって実行とかプログラムがどうやって実行 されているのかとかヘッダファイルされているのかとかヘッダファイル やライブラリがどんなふうに使われやライブラリがどんなふうに使われ ているのかとかが理解できるはずているのかとかが理解できるはず

(多分多分)

Page 71: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

関連関連OSS一覧一覧gcc

binutils gdb

Linuxカーネルカーネル glibcソースコードソースコード

FreeBSD その他多数その他多数

Page 72: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

どうでしょうかどうでしょうか

Page 73: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

ハロー・ワールドにハロー・ワールドに 入門してみたく入門してみたく

なったことかと思いますなったことかと思います

Page 74: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

みんなでみんなで ハロー・ワールドでハロー・ワールドで 入門しよう!入門しよう!

Page 75: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

みんなでみんなで ハロー・ワールドでハロー・ワールドで 入門しよう!入門しよう!

にに

Page 76: 坂井弘亮 - kozoskozos.jp/documents/helloworld.pdfHello World! いわゆる 「ハロー・ワールド」 ハロー・ワールドについて たまに言われること 「このプログラムについて

どうもありがとうどうもありがとうございましたございました