5. What is Tanka?
• Tanka is…
• Japanese Short Poem
• 5-7-5-7-7 Style
– Number is the letters of character in each part
• Includes “Kigo(季語)”
– “Kigo” is the season word
• Rule and style
5
6. In Wikipedia
• Tanka (短歌 "short poem") is a genre of
classical Japanese poetry and one of the
major genres of Japanese literature
• http://en.wikipedia.org/wiki/Tanka
Copyright by Kunio Miyamoto
7. Example
• 東海の小島の磯の白砂に
われ泣きぬれて
蟹(かに)とたはむる(石川啄木)
• On the white sand
Of the beach of a small island
In the Eastern Sea
I, my face streaked with tears,
Am playing with a crab(Takuboku Ishikawa)
Copyright by Kunio Miyamoto
8. Example
• 東海の小島の磯の白砂に
われ泣きぬれて
蟹(かに)とたはむる(石川啄木)
• On the white sand
Of the beach of a small island
In the Eastern Sea
I, my face streaked with tears,
Am playing with a crab(Takuboku Ishikawa)
Copyright by Kunio Miyamoto
とうかいの
こじまのいその
しろすなに
われなきぬれて
かにとたはむる
9. Example
• 東海の小島の磯の白砂に
われ泣きぬれて
蟹(かに)とたはむる(石川啄木)
• On the white sand
Of the beach of a small island
In the Eastern Sea
I, my face streaked with tears,
Am playing with a crab(Takuboku Ishikawa)
Copyright by Kunio Miyamoto
Remember
This Style
10. What is
assembly language tanka?
• Assembler TANKA is…
• Machine Language Short Poem(!)
• 5-7-5-7-7 Style
• Includes “Kigo(季語)”
– “Kigo” is the season word
• Rhythmic
e.g.: Ends or starts same code in each part
• Executable(!)
10
11. Example
.section .text
.global main
.type main, @function
main:
push $0x43412054
push $0x53524946
mov %esp, %ecx
xor %ebx, %ebx
inc %ebx
mov %ebx, %eax
add %eax, %eax
add %eax, %eax
nop
mov %eax, %edx
add %edx, %edx
int $0x80
add %edx, %esp
ret
Copyright by Kunio Miyamoto
ONLY
14 Instructions!
Runs on Linux/x86
31. In other programming
language tanka?
• Shell Script(/bin/sh)
– line1: #!/bin/sh ← 9letters
Copyright by Kunio Miyamoto
32. In other programming
language tanka?
• Shell Script(/bin/sh)
– line1: #!/bin/sh ← 9letters
• C language
– Line1: main() ←6letter
Copyright by Kunio Miyamoto
33. In other programming
language tanka?
• Shell Script(/bin/sh)
– line1: #!/bin/sh ← 9letters
• C language
– Line1: main() ←6letter
Copyright by Kunio Miyamoto
34. Assembly language tanka is
useful?
Yes!
Learning the
• Assembly language programming
• Optimization
• Shellcode programming
etc…
Copyright by Kunio Miyamoto