アセンブラ短歌 - 坂井弘亮

158
アセンブラ短歌 アセンブラ短歌 坂井弘亮 坂井弘亮 (KOZOSプロジェクト プロジェクト ) TwitterID:kozossakai

Upload: asmtanka

Post on 31-May-2015

828 views

Category:

Technology


0 download

DESCRIPTION

http://ja.avtokyo.org/MediaArchives

TRANSCRIPT

Page 1: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌アセンブラ短歌

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

Page 2: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌?アセンブラ短歌?

Page 3: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌とはアセンブラ短歌とは5・7・5・7・7の機械語5・7・5・7・7の機械語 コードでプログラムをコードでプログラムを 書いてみるという書いてみるという

近未来の文化的趣味近未来の文化的趣味

Page 4: アセンブラ短歌 - 坂井弘亮

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

Page 5: アセンブラ短歌 - 坂井弘亮

68 72 6c 64 2168 6f 20 57 6f 90 9068 48 65 6c 6c89 e5 6a 0c 55 6a 0250 90 6a 04 58 cd 80

Page 6: アセンブラ短歌 - 坂井弘亮

札に詠むと札に詠むとこんな感じこんな感じ

Page 7: アセンブラ短歌 - 坂井弘亮
Page 8: アセンブラ短歌 - 坂井弘亮

実行結果実行結果

Page 9: アセンブラ短歌 - 坂井弘亮

Hello World!

Page 10: アセンブラ短歌 - 坂井弘亮

ちなみにちなみに他の言語では他の言語では

Page 11: アセンブラ短歌 - 坂井弘亮

「XX短歌」は「XX短歌」は 他の言語では他の言語では 難難しいしい

Page 12: アセンブラ短歌 - 坂井弘亮

スクリプト言語ではスクリプト言語では これが邪魔これが邪魔

Page 13: アセンブラ短歌 - 坂井弘亮

#!/bin/sh(9文字9文字)

Page 14: アセンブラ短歌 - 坂井弘亮

C言語ではC言語では これが邪魔これが邪魔

Page 15: アセンブラ短歌 - 坂井弘亮

#include <stdio.h>

(18文字18文字)

Page 16: アセンブラ短歌 - 坂井弘亮

XSS短歌は?短歌は?

Page 17: アセンブラ短歌 - 坂井弘亮

短歌短歌ismがが 感じられない感じられない

Page 18: アセンブラ短歌 - 坂井弘亮

アセンブラはアセンブラは もっとももっとも短歌短歌に向いたに向いた 高級(な)言語です高級(な)言語です

Page 19: アセンブラ短歌 - 坂井弘亮

ところでところで

Page 20: アセンブラ短歌 - 坂井弘亮

SECCON 長野大会の長野大会の 品評会で品評会で 披露されたもの披露されたもの

Page 21: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌アセンブラ短歌作品の作品の

Page 22: アセンブラ短歌 - 坂井弘亮

掛軸掛軸

Page 23: アセンブラ短歌 - 坂井弘亮
Page 24: アセンブラ短歌 - 坂井弘亮

拡大すると拡大すると

Page 25: アセンブラ短歌 - 坂井弘亮

タイトル「新潟」タイトル「新潟」

Page 26: アセンブラ短歌 - 坂井弘亮

ではでは

Page 27: アセンブラ短歌 - 坂井弘亮

作品を一首作品を一首 鑑賞して鑑賞して みましょうみましょう

Page 28: アセンブラ短歌 - 坂井弘亮

タイトルタイトル 「夏休み」「夏休み」詠み人:私詠み人:私

Page 29: アセンブラ短歌 - 坂井弘亮
Page 30: アセンブラ短歌 - 坂井弘亮

鑑賞ポイント鑑賞ポイント

Page 31: アセンブラ短歌 - 坂井弘亮

アセンブラを見るとアセンブラを見るとpush $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

上の句上の句下の句下の句

Page 32: アセンブラ短歌 - 坂井弘亮

アセンブラを見るとアセンブラを見るとpush $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

上の句上の句下の句下の句

各句の末尾に同じ命令が各句の末尾に同じ命令が

Page 33: アセンブラ短歌 - 坂井弘亮

つまりつまり

Page 34: アセンブラ短歌 - 坂井弘亮

韻をふんでいる韻をふんでいる わけですわけです

Page 35: アセンブラ短歌 - 坂井弘亮
Page 36: アセンブラ短歌 - 坂井弘亮

0x40でで韻をふむ韻をふむ

Page 37: アセンブラ短歌 - 坂井弘亮

他にも他にも

Page 38: アセンブラ短歌 - 坂井弘亮

push $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

Page 39: アセンブラ短歌 - 坂井弘亮

push $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

EAXの値を流用しての値を流用して レジスタ設定しているレジスタ設定している

Page 40: アセンブラ短歌 - 坂井弘亮

まるでまるで

Page 41: アセンブラ短歌 - 坂井弘亮

流れる小川の流れる小川のせせらぎのようせせらぎのよう

Page 42: アセンブラ短歌 - 坂井弘亮

命令に注目命令に注目するとすると

Page 43: アセンブラ短歌 - 坂井弘亮

push $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

Page 44: アセンブラ短歌 - 坂井弘亮

push $0pop %eaxpush %eaxinc %eax

push $0x616d6179push %eaxinc %eax

push $8pop %edxpop %ebxinc %eax

push $0x616b6157push %espinc %eax

pop %ecxint $0x80pop %eaxpop %eaxpop %eaxret

命令のリズムもある命令のリズムもある

Page 45: アセンブラ短歌 - 坂井弘亮

総評総評 最初にゼロ設定した最初にゼロ設定したEAXががinc命令で1ずつ増加命令で1ずつ増加していく際に,その値を流用してしていく際に,その値を流用して EBXや戻り値のや戻り値のEAXを設定していくさまは,を設定していくさまは, 流れる小川のせせら流れる小川のせせらぎぎ のようです.またニーモニックを見ると「のようです.またニーモニックを見ると「push-

pop-push-inc, push-push-inc」」 「「push-pop-pop-inc, push-push-inc」という」という スキップスキップするようなリズムするようなリズム があり,小川のほとりで遊ぶがあり,小川のほとりで遊ぶ 子子供たちの情景供たちの情景 を思い起こさせ,を思い起こさせ, 「夏休み」「夏休み」 というという

テーマがよく表現されています.テーマがよく表現されています.

Page 46: アセンブラ短歌 - 坂井弘亮

短歌への情熱短歌への情熱 (tankassion) にあふれた作品ですにあふれた作品です

Page 47: アセンブラ短歌 - 坂井弘亮

そんなアセンブラ短歌そんなアセンブラ短歌 ですがですが

Page 48: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌がアセンブラ短歌が 書籍化されてます!書籍化されてます! (オンデマンドオンデマンド&電子電子)

Page 49: アセンブラ短歌 - 坂井弘亮

31バイトでつくるバイトでつくる アセンブラプログラミングアセンブラプログラミング アセンブラ短歌の世界アセンブラ短歌の世界

Page 50: アセンブラ短歌 - 坂井弘亮
Page 51: アセンブラ短歌 - 坂井弘亮

短歌短歌ists坂井坂井 弘亮弘亮 愛甲愛甲 健二健二 松田松田 和樹和樹 坂井坂井 丈泰丈泰 竹迫竹迫 良範良範

Page 52: アセンブラ短歌 - 坂井弘亮

すでに販売開始すでに販売開始していますしています

(オンデマンドなのでオンデマンドなので書店には並びません書店には並びません)

Page 53: アセンブラ短歌 - 坂井弘亮

発刊記念イベント!発刊記念イベント! (1月20日1月20日(月月)) 「二〇一四アセンブラ短歌詠みはじめ」「二〇一四アセンブラ短歌詠みはじめ」 竹橋竹橋 パレスサイドビルパレスサイドビル マイナビルームマイナビルーム

Page 54: アセンブラ短歌 - 坂井弘亮

ここからがここからが今日の本題今日の本題

Page 55: アセンブラ短歌 - 坂井弘亮

アセンブラ短歌にアセンブラ短歌に もっとも向いたもっとも向いた アーキテクチャはアーキテクチャは

何か?何か?

Page 56: アセンブラ短歌 - 坂井弘亮

RISC系プロセッサRISC系プロセッサ → 4バイト固定長命令4バイト固定長命令 可変長命令でも可変長命令でも

→ 偶数バイト命令が多偶数バイト命令が多原理的に不可能原理的に不可能

Page 57: アセンブラ短歌 - 坂井弘亮

以下のアーキで以下のアーキで 原理的に原理的に可能可能なな ことが判明ことが判明

x86(Intel) M32C(三菱三菱) MN10300(松下松下)

RL78(ルネサスルネサス) RX(ルネサスルネサス) Xtensa(テンシリカテンシリカ)

Page 58: アセンブラ短歌 - 坂井弘亮

やってみたやってみた

Page 59: アセンブラ短歌 - 坂井弘亮

まず、RXまず、RX

Page 60: アセンブラ短歌 - 坂井弘亮

こんな感じかこんな感じかmov.l #1, r1mov.l #10, r3nop

mov.l #0x6c6c6548, [r0]nop

mov.l #0x6c72, 8[r0] mov.l #0x6f57206f, 4[r0]

mov.l r0, r2mov.l #5, r5int #255

上の句上の句

下の句下の句

Page 61: アセンブラ短歌 - 坂井弘亮

実行結果は実行結果は

Page 62: アセンブラ短歌 - 坂井弘亮

Hello Worl(10文字10文字)

Page 63: アセンブラ短歌 - 坂井弘亮

次、RL78次、RL78

Page 64: アセンブラ短歌 - 坂井弘亮

Hello Wor(9文字9文字)

Page 65: アセンブラ短歌 - 坂井弘亮

他のは他のはこんな感じこんな感じ

Page 66: アセンブラ短歌 - 坂井弘亮

MN10300

M32CHello Wo

Hello!

(8文字8文字)

(6文字6文字)

Page 67: アセンブラ短歌 - 坂井弘亮

i386/FreeBSD

x86/LinuxHello World!

Hello World!!

(12文字文字)

(13文字文字)

Page 68: アセンブラ短歌 - 坂井弘亮

比較してみる比較してみる

Page 69: アセンブラ短歌 - 坂井弘亮

比較の前に比較の前に

Page 70: アセンブラ短歌 - 坂井弘亮

定量化の定量化のためにはためには単位が必要単位が必要

Page 71: アセンブラ短歌 - 坂井弘亮

単位を制定する単位を制定するBPT (Byte per Tanka)

...アセンブラ短歌のアセンブラ短歌の やりやすさやりやすさの指標の指標

Page 72: アセンブラ短歌 - 坂井弘亮

たとえばRXではたとえばRXではhello Worlで10文字なのでで10文字なので 10BPT10BPT

Page 73: アセンブラ短歌 - 坂井弘亮

集計すると集計すると

Page 74: アセンブラ短歌 - 坂井弘亮

M32C 6BPTMN10300 8BPTRL78 9BPTRX 10BPTi386/FreeBSD12BPTx86/Linux 13BPT

Page 75: アセンブラ短歌 - 坂井弘亮

x86は非常には非常に 短歌に向いている短歌に向いている ことが判明ことが判明

(あとあとLinuxもも)

Page 76: アセンブラ短歌 - 坂井弘亮

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

Page 77: アセンブラ短歌 - 坂井弘亮

総評総評 最初にゼロ設定した最初にゼロ設定したEAXががinc命令で1ずつ増加命令で1ずつ増加していく際に,その値を流用してしていく際に,その値を流用して EBXや戻り値のや戻り値のEAXを設定していくさまは,を設定していくさまは, 流れる小川のせせら流れる小川のせせらぎぎ のようです.またニーモニックを見ると「のようです.またニーモニックを見ると「push-

pop-push-inc, push-push-inc」」 「「push-pop-pop-inc, push-push-inc」という」という スキップスキップするようなリズムするようなリズム があり,小川のほとりで遊ぶがあり,小川のほとりで遊ぶ 子子供たちの情景供たちの情景 を思い起こさせ,を思い起こさせ, 「夏休み」「夏休み」 というという

テーマがよく表現されています.テーマがよく表現されています.

Page 78: アセンブラ短歌 - 坂井弘亮

総評総評 最初にゼロ設定した最初にゼロ設定したEAXががinc命令で1ずつ増加命令で1ずつ増加していく際に,その値を流用してしていく際に,その値を流用して EBXや戻り値のや戻り値のEAXを設定していくさまは,を設定していくさまは, 流れる小川のせせら流れる小川のせせらぎぎ のようです.またニーモニックを見ると「のようです.またニーモニックを見ると「push-

pop-push-inc, push-push-inc」」 「「push-pop-pop-inc, push-push-inc」という」という スキップスキップするようなリズムするようなリズム があり,小川のほとりで遊ぶがあり,小川のほとりで遊ぶ 子子供たちの情景供たちの情景 を思い起こさせ,を思い起こさせ, 「夏休み」「夏休み」 というという

テーマがよく表現されています.テーマがよく表現されています.

Page 79: アセンブラ短歌 - 坂井弘亮

総評総評 最初にゼロ設定した最初にゼロ設定したEAXががinc命令で1ずつ増加命令で1ずつ増加していく際に,その値を流用してしていく際に,その値を流用して EBXや戻り値のや戻り値のEAXを設定していくさまは,を設定していくさまは, 流れる小川のせせら流れる小川のせせらぎぎ のようです.またニーモニックを見ると「のようです.またニーモニックを見ると「push-

pop-push-inc, push-push-inc」」 「「push-pop-pop-inc, push-push-inc」という」という スキップスキップするようなリズムするようなリズム があり,小川のほとりで遊ぶがあり,小川のほとりで遊ぶ 子子供たちの情景供たちの情景 を思い起こさせ,を思い起こさせ, 「夏休み」「夏休み」 というという

テーマがよく表現されています.テーマがよく表現されています.

Page 80: アセンブラ短歌 - 坂井弘亮

総評総評 最初にゼロ設定した最初にゼロ設定したEAXががinc命令で1ずつ増加命令で1ずつ増加していく際に,その値を流用してしていく際に,その値を流用して EBXや戻り値のや戻り値のEAXを設定していくさまは,を設定していくさまは, 流れる小川のせせら流れる小川のせせらぎぎ のようです.またニーモニックを見ると「のようです.またニーモニックを見ると「push-

pop-push-inc, push-push-inc」」 「「push-pop-pop-inc, push-push-inc」という」という スキップスキップするようなリズムするようなリズム があり,小川のほとりで遊ぶがあり,小川のほとりで遊ぶ 子子供たちの情景供たちの情景 を思い起こさせ,を思い起こさせ, 「夏休み」「夏休み」 というという

テーマがよく表現されています.テーマがよく表現されています.

Page 81: アセンブラ短歌 - 坂井弘亮

まず最初にまず最初に紹介紹介

Page 82: アセンブラ短歌 - 坂井弘亮

SECCONSECCON20132013SECCONSECCON20132013SECCONSECCON20132013SECCONSECCON20132013

Page 83: アセンブラ短歌 - 坂井弘亮

10月の長野大会では10月の長野大会では アセンブラ短歌のアセンブラ短歌の コンテストとコンテストと品評会品評会がが 行われました行われました

Page 84: アセンブラ短歌 - 坂井弘亮

それならば、それならば、 これもできるだろうとこれもできるだろうと

いうことでいうことで

Page 85: アセンブラ短歌 - 坂井弘亮

アセンブラ川柳アセンブラ川柳

Page 86: アセンブラ短歌 - 坂井弘亮

6a 48 89 e5 906a 01 55 6a 02 50 906a 04 58 cd 80

Page 87: アセンブラ短歌 - 坂井弘亮

実行結果実行結果

Page 88: アセンブラ短歌 - 坂井弘亮

HH

Page 89: アセンブラ短歌 - 坂井弘亮

1文字が1文字が せいいっぱいでしたせいいっぱいでした下の句が無いと下の句が無いと けっこう難しいけっこう難しい

Page 90: アセンブラ短歌 - 坂井弘亮

まてよまてよ

Page 91: アセンブラ短歌 - 坂井弘亮

ということはということは

Page 92: アセンブラ短歌 - 坂井弘亮

こういうのもこういうのも 可能ということか可能ということか

Page 93: アセンブラ短歌 - 坂井弘亮

アセンブラアセンブラかるたかるた

Page 94: アセンブラ短歌 - 坂井弘亮

作ってみた作ってみた

Page 95: アセンブラ短歌 - 坂井弘亮

68 a5 f3 a5 b068 a1 bc a5 ea 90 9068 a5 d5 a5 a389 e5 6a 0c 55 6a 0250 90 6a 04 58 cd 80

68 00 00 a5 a268 a5 bb a5 f3 90 9068 a5 d6 a5 e989 e5 6a 0c 55 6a 0250 90 6a 04 58 cd 80

実行実行 → フィーリングフィーリング

実行実行 → ブラセンアブラセンア

Page 96: アセンブラ短歌 - 坂井弘亮

しかし問題ありしかし問題あり

Page 97: アセンブラ短歌 - 坂井弘亮

バイナリダンプをバイナリダンプを見ると見ると

Page 98: アセンブラ短歌 - 坂井弘亮

00000000 68 a5 f3 a5 b0 68 a1 bc |hングングhーー|00000008 a5 ea 90 90 68 a5 d5 a5 |リリ..hフフ|00000010 a3 89 e5 6a 0c 55 6a 02 |.j.Uj.|00000018 50 90 6a 04 58 cd 80 |P.j.X.|

00000000 68 00 00 a5 a2 68 a5 bb |h..アアhセセ|00000008 a5 f3 90 90 68 a5 d6 a5 |ンン..hブブ|00000010 e9 89 e5 6a 0c 55 6a 02 |.j.Uj.|00000018 50 90 6a 04 58 cd 80 |P.j.X.|

Page 99: アセンブラ短歌 - 坂井弘亮

00000000 68 a5 f3 a5 b0 68 a1 bc |hングングhーー|00000008 a5 ea 90 90 68 a5 d5 a5 |リリ..hフフ|00000010 a3 89 e5 6a 0c 55 6a 02 |.j.Uj.|00000018 50 90 6a 04 58 cd 80 |P.j.X.|

00000000 68 00 00 a5 a2 68 a5 bb |h..アアhセセ|00000008 a5 f3 90 90 68 a5 d6 a5 |ンン..hブブ|00000010 e9 89 e5 6a 0c 55 6a 02 |.j.Uj.|00000018 50 90 6a 04 58 cd 80 |P.j.X.|

Page 100: アセンブラ短歌 - 坂井弘亮

読み札を読み札を 読み上げた時点で読み上げた時点で 取り札が取り札が わかってしまうわかってしまう

Page 101: アセンブラ短歌 - 坂井弘亮

これではこれでは 競技にできない競技にできない

Page 102: アセンブラ短歌 - 坂井弘亮

xorにかけてにかけて 難読化難読化 してみるしてみる

Page 103: アセンブラ短歌 - 坂井弘亮

b8 5b 0c 5a 29f7 d8 50 b8 5b 5d 5a 44 (字余り字余り)f7 d8 50 89 e56a 08 55 6a 02 50 9090 90 6a 04 58 cd 80

Page 104: アセンブラ短歌 - 坂井弘亮

実行結果実行結果

Page 105: アセンブラ短歌 - 坂井弘亮

アセンブアセンブ

Page 106: アセンブラ短歌 - 坂井弘亮

4文字が4文字が せいいっぱいせいいっぱい でしたでした

Page 107: アセンブラ短歌 - 坂井弘亮

バイナリダンプはバイナリダンプは

Page 108: アセンブラ短歌 - 坂井弘亮

00000000 b8 5b 0c 5a 29 f7 d8 50 |[.Z)P|00000008 b8 5b 5d 5a 44 f7 d8 50 |[]ZDP|00000010 89 e5 6a 08 55 6a 02 50 |.j.Uj.P|00000018 90 90 90 6a 04 58 cd 80 |...j.X.|

Page 109: アセンブラ短歌 - 坂井弘亮

これならこれなら読めまい読めまい

Page 110: アセンブラ短歌 - 坂井弘亮

ふだんは趣味でふだんは趣味で こんなことをこんなことを やっていますやっています

Page 111: アセンブラ短歌 - 坂井弘亮

GCCが対応しているGCCが対応している CPUアーキテクチャのCPUアーキテクチャの

アセンブラをアセンブラを 片っ端片っ端から出力させてから出力させて 片っ端片っ端から読んでみるから読んでみる

Page 112: アセンブラ短歌 - 坂井弘亮

この技術をこの技術を アセンブラ短歌にアセンブラ短歌に 活活かしたいかしたい

Page 113: アセンブラ短歌 - 坂井弘亮

こんな感じこんな感じmov 0xfff10, #72mov a, #108

mov 0xfff10, #101mov 0xfff10, amov 0xfff10, a

mov 0xfff10, #111mov a, #32

mov 0xfff10, amov 0xfff10, #87mov a, #111

mov 0xfff10, amov 0xfff10, #114nopnop上の句上の句

下の句下の句

Page 114: アセンブラ短歌 - 坂井弘亮

こんなこんな かんじかんじ

Page 115: アセンブラ短歌 - 坂井弘亮

実行結果は実行結果は

Page 116: アセンブラ短歌 - 坂井弘亮

SoftwareDesign誌誌 懐かしの連載懐かしの連載 「全国津々浦々!「全国津々浦々! 勉強会勉強会&イベントイベント 探訪記」探訪記」

Page 117: アセンブラ短歌 - 坂井弘亮

電子書籍に電子書籍になります!なります!

Page 118: アセンブラ短歌 - 坂井弘亮

電子書籍に電子書籍になります!なります!

した!した!

Page 119: アセンブラ短歌 - 坂井弘亮

達人出版会達人出版会

Page 120: アセンブラ短歌 - 坂井弘亮

TechLIONもも 収録されてます!収録されてます!

(vol.1〜〜4)

Page 121: アセンブラ短歌 - 坂井弘亮

高橋さん高橋さんありがとうありがとうございますございます(深謝深謝)

Page 122: アセンブラ短歌 - 坂井弘亮

あともうひとつあともうひとつ

Page 123: アセンブラ短歌 - 坂井弘亮

マイナビマイナビ すげえすげえ

Page 124: アセンブラ短歌 - 坂井弘亮

タイトルタイトル 「我思う」「我思う」詠み人:私詠み人:私

Page 125: アセンブラ短歌 - 坂井弘亮
Page 126: アセンブラ短歌 - 坂井弘亮

鑑賞ポイント鑑賞ポイント

Page 127: アセンブラ短歌 - 坂井弘亮

実は実はQuineにに なってますなってます

Page 128: アセンブラ短歌 - 坂井弘亮

Quineとはとは自分自身を出力する自分自身を出力するプログラムのことですプログラムのことです

Page 129: アセンブラ短歌 - 坂井弘亮

つまりつまり

Page 130: アセンブラ短歌 - 坂井弘亮

これを実行するとこれを実行すると

Page 131: アセンブラ短歌 - 坂井弘亮
Page 132: アセンブラ短歌 - 坂井弘亮

これが出力されますこれが出力されます

Page 133: アセンブラ短歌 - 坂井弘亮
Page 134: アセンブラ短歌 - 坂井弘亮

さらにさらに機械語コードに機械語コードに注目!注目!

Page 135: アセンブラ短歌 - 坂井弘亮
Page 136: アセンブラ短歌 - 坂井弘亮

"QUINE"のの5文字が5文字が埋め込んで埋め込んでありますあります

Page 137: アセンブラ短歌 - 坂井弘亮

つまりつまり

Page 138: アセンブラ短歌 - 坂井弘亮

Quineによりにより「「QUINE」と」と出力される!出力される!

Page 139: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 140: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 141: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 142: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 143: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 144: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 145: アセンブラ短歌 - 坂井弘亮

総評総評 Quineにより「により「QUINE」と出力させていることは,」と出力させていることは,内面内面 をさらけ出した上で「私を見ろ!」「私は私をさらけ出した上で「私を見ろ!」「私は私だ!」と言っているようなだ!」と言っているような 強い自我強い自我とと 誇りの高さ誇りの高さ,,情熱情熱を感じさせ,を感じさせ, タイトルの「我思う」にふさわしタイトルの「我思う」にふさわしい作品になっています.い作品になっています. 言いたいことを言った後は言いたいことを言った後はretでなくでなくexitシステムコールでシステムコールで 終わっていることも終わっていることも過去を振り返らない過去を振り返らない 意志の強さ意志の強さ が感じられていが感じられていさぎ良く,さぎ良く, 一本筋一本筋 の通っている作品と言うことがの通っている作品と言うことが

できるでしょう.できるでしょう.

Page 146: アセンブラ短歌 - 坂井弘亮

バイナリカレンダーバイナリカレンダー持ってきてます持ってきてます

Page 147: アセンブラ短歌 - 坂井弘亮

こんなのこんなのですです

Page 148: アセンブラ短歌 - 坂井弘亮
Page 149: アセンブラ短歌 - 坂井弘亮

ほしいかたにはほしいかたには あげますあげます

お声がけくださいお声がけください

Page 150: アセンブラ短歌 - 坂井弘亮

さて本題さて本題

Page 151: アセンブラ短歌 - 坂井弘亮

そんなそんな アセンブラ短歌アセンブラ短歌 ですがですが

Page 152: アセンブラ短歌 - 坂井弘亮

いちおういちおう セキュリティ教育のセキュリティ教育の 目的があります目的があります

(詳しくは詳しくはHP参照参照)http://kozos.jp/asm-tanka/

Page 153: アセンブラ短歌 - 坂井弘亮

機械語コードは機械語コードはこんな感じこんな感じ

Page 154: アセンブラ短歌 - 坂井弘亮
Page 155: アセンブラ短歌 - 坂井弘亮
Page 156: アセンブラ短歌 - 坂井弘亮

SECCONとは何かSECCONとは何か

セキュリティ競技のセキュリティ競技のコンテストですコンテストです

Page 157: アセンブラ短歌 - 坂井弘亮

昨年度は昨年度はCTFというという 競技大会が競技大会が メインでしたがメインでしたが

Page 158: アセンブラ短歌 - 坂井弘亮

今年度のSECCONでは今年度のSECCONでは 様々な様々なコンテストコンテストがが 行われています行われています