Slide

Size: px
Start display at page:

Download "Slide"

Transcription

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

2 まず最初に紹介

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

4 電子書籍になります!

5 電子書籍になります! した!

6 達人出版会

7 TechLION も 収録されてます! (vol.1 4)

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

9 あともうひとつ

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

11 こんなのです

12

13 ほしいかたにはあげますお声がけください

14 さて本題

15 SECCON 2013

16 SECCON とは何か セキュリティ競技の コンテストです

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

18 アセンブラ短歌?

19 アセンブラ短歌とは の機械語 コードでプログラムを 書いてみるという 近未来の文化的趣味

20 こんな感じです

21 c f f c 6c 89 e5 6a 0c 55 6a a cd 80

22 札に詠むとこんな感じ

23

24 実行結果

25 Hello World!

26 ところで

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

28 アセンブラ短歌作品の

29 掛軸

30

31 拡大すると

32 タイトル 新潟

33 ちなみに

34 アセンブラ短歌も 近日中に 書籍化されます! ( オンデマンド & 電子 )

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

36 マイナビすげえ

37

38

39 すでに予約開始 しています ( オンデマンドなので 書店には並びません )

40 では書籍中から

41 一首鑑賞してみましょう

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

43

44 鑑賞ポイント

45 実は Quineになってます

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

47 つまり

48 これを実行すると

49

50 これが出力されます

51

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

53

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

55 つまり

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

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

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

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

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

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

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

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

64 ここからが今日の本題

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

66 RISC 系プロセッサ 4 バイト固定長命令 可変長命令でも 偶数バイト命令が多原理的に不可能

67 以下のアーキで 原理的に可能な ことが判明 x86(intel) M32C( 三菱 ) MN10300( 松下 ) RL78( ルネサス ) RX( ルネサス ) Xtensa( テンシリカ )

68 やってみた

69 まず RX

70 こんな感じか mov.l #1, r1 mov.l #10, r3 nop mov.l #0x6c6c6548, [r0] nop mov.l #0x6c72, 8[r0] 上の句 mov.l #0x6f57206f, 4[r0] mov.l r0, r2 mov.l #5, r5 int #255 下の句

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

72

73 実行結果は

74 Hello Worl (10 文字 )

75 次 RL78

76 Hello Wor (99 文字 )

77 他のはこんな感じ

78 MN10300 Hello Wo (88 文字 ) M32C Hello! (66 文字 )

79 i386/freebsd Hello World! (88 文字 ) x86/linux Hello World!! (66 文字 )

80 比較してみる

81 比較の前に

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

83 単位を制定する BPT (Byte per Tanka)... アセンブラ短歌の やりやすさの指標

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

85 集計すると

86 M32C MN10300 RL78 RX 6BPT 8BPT 9BPT 10BPT i386/freebsd12bpt x86/linux 13BPT

87 x86は非常に 短歌に向いている ことが判明 ( あと Linuxも )

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

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

90 今年の SECCON では 様々なコンテストコンテストが 行われるらしい

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

92 いちおう セキュリティ教育の 目的があります ( 詳しくは HP 参照 )

93 ちなみに他の言語では

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

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

96 #!/bin/sh (99 文字 )

97 C 言語ではこれが邪魔

98 #include <stdio.h> (18 文字 )

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

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

101 アセンブラ川柳

102 6a e5 90 6a a a cd 80

103 実行結果

104 H

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

106 まてよ

107 ということは

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

109 アセンブラかるた

110 作ってみた

111 68 a5 f3 a5 b0 68 a1 bc a5 ea a5 d5 a5 a3 89 e5 6a 0c 55 6a a cd 80 実行 フィーリング a5 a2 68 a5 bb a5 f a5 d6 a5 e9 89 e5 6a 0c 55 6a a cd 80 実行 ブラセンア

112 しかし問題あり

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

114 a5 f3 a5 b0 68 a1 bc hング h ー a5 ea a5 d5 a5 リ..hフ a3 89 e5 6a 0c 55 6a 02.j.Uj a cd 80 P.j.X a5 a2 68 a5 bb h.. ア h セ a5 f a5 d6 a5 ン..h ブ e9 89 e5 6a 0c 55 6a 02.j.Uj a cd 80 P.j.X.

115 a5 f3 a5 b0 68 a1 bc hング h ー a5 ea a5 d5 a5 リ..hフ a3 89 e5 6a 0c 55 6a 02.j.Uj a cd 80 P.j.X a5 a2 68 a5 bb h.. ア h セ a5 f a5 d6 a5 ン..h ブ e9 89 e5 6a 0c 55 6a 02.j.Uj a cd 80 P.j.X.

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

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

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

119 b8 5b 0c 5a 29 f7 d8 50 b8 5b 5d 5a 44 ( 字余り ) f7 d e5 6a a a cd 80

120 実行結果

121 アセンブ

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

123 バイナリダンプは

124 b8 5b 0c 5a 29 f7 d8 50 [.Z)P b8 5b 5d 5a 44 f7 d8 50 []ZDP e5 6a a j.Uj.P a cd 80...j.X.

125 これなら読めまい

126 タイトル 夏休み 詠み人 : 私

127

128 鑑賞ポイント

129 アセンブラを見ると push $0 pop %eax push %eax inc %eax push push inc 上の句 push $8 pop %edx pop %ebx inc %eax $0x616d6179 %eax %eax push push inc pop %ecx int $0x80 pop %eax pop %eax pop %eax ret $0x616b6157 %esp %eax 下の句

130 アセンブラを見ると push $0 pop %eax push %eax inc %eax push push inc 上の句 push $8 pop %edx pop %ebx inc %eax 各句の末尾に同じ命令が $0x616d6179 %eax %eax push push inc pop %ecx int $0x80 pop %eax pop %eax pop %eax ret $0x616b6157 %esp %eax 下の句

131 つまり

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

133

134 0x40 で 韻をふむ

135 他にも

136 push $0 pop %eax push %eax inc %eax push $0x616d6179 push %eax inc %eax push $8 pop %edx pop %ebx inc %eax push $0x616b6157 push %esp inc %eax pop %ecx int $0x80 pop %eax pop %eax pop %eax ret

137 push $0 pop %eax push %eax inc %eax push push inc push $8 pop %edx pop %ebx inc %eax EAXの値を流用して レジスタ設定している $0x616d6179 %eax %eax push push inc pop %ecx int $0x80 pop %eax pop %eax pop %eax ret $0x616b6157 %esp %eax

138 まるで

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

140 命令に注目すると

141 push $0 pop %eax push %eax inc %eax push $0x616d6179 push %eax inc %eax push $8 pop %edx pop %ebx inc %eax push $0x616b6157 push %esp inc %eax pop %ecx int $0x80 pop %eax pop %eax pop %eax ret

142 push $0 pop %eax push %eax inc %eax push push inc push $8 pop %edx pop %ebx inc %eax 命令のリズムもある $0x616d6179 %eax %eax push push inc pop %ecx int $0x80 pop %eax pop %eax pop %eax ret $0x616b6157 %esp %eax

143 総評 最初にゼロ設定した EAXがinc 命令で 1 ずつ増加していく際に, その値を流用して EBXや戻り値の EAXを設定していくさまは, 流れる小川のせせらぎのようです. またニーモニックを見ると pushpop-push-inc, push-push-inc pushpop-pop-inc, push-push-inc というスキップするようなリズムがあり, 小川のほとりで遊ぶ子供たちの情景を思い起こさせ, 夏休み というテーマがよく表現されています.

144 総評 最初にゼロ設定した EAXがinc 命令で 1 ずつ増加していく際に, その値を流用して EBXや戻り値の EAXを設定していくさまは, 流れる小川のせせらぎのようです. またニーモニックを見ると pushpop-push-inc, push-push-inc pushpop-pop-inc, push-push-inc というスキップするようなリズムがあり, 小川のほとりで遊ぶ子供たちの情景を思い起こさせ, 夏休み というテーマがよく表現されています.

145 総評 最初にゼロ設定した EAXがinc 命令で 1 ずつ増加していく際に, その値を流用して EBXや戻り値の EAXを設定していくさまは, 流れる小川のせせらぎのようです. またニーモニックを見ると pushpop-push-inc, push-push-inc pushpop-pop-inc, push-push-inc というスキップするようなリズムがあり, 小川のほとりで遊ぶ子供たちの情景を思い起こさせ, 夏休み というテーマがよく表現されています.

146 総評 最初にゼロ設定した EAXがinc 命令で 1 ずつ増加していく際に, その値を流用して EBXや戻り値の EAXを設定していくさまは, 流れる小川のせせらぎのようです. またニーモニックを見ると pushpop-push-inc, push-push-inc pushpop-pop-inc, push-push-inc というスキップするようなリズムがあり, 小川のほとりで遊ぶ子供たちの情景を思い起こさせ, 夏休み というテーマがよく表現されています.

147 総評 最初にゼロ設定した EAXがinc 命令で 1 ずつ増加していく際に, その値を流用して EBXや戻り値の EAXを設定していくさまは, 流れる小川のせせらぎのようです. またニーモニックを見ると pushpop-push-inc, push-push-inc pushpop-pop-inc, push-push-inc というスキップするようなリズムがあり, 小川のほとりで遊ぶ子供たちの情景を思い起こさせ, 夏休み というテーマがよく表現されています.

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

149 GCC が対応している CPU アーキテクチャの アセンブラを 片っ端から出力させて 片っ端から読んでみる

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

151 こんな感じ mov 0xfff10, #72 mov a, #108 mov 0xfff10, #101 mov 0xfff10, a mov 0xfff10, a mov 0xfff10, #111 mov a, #32 上の句 下の句 mov 0xfff10, a mov 0xfff10, #87 mov a, #111 mov 0xfff10, a mov 0xfff10, #114 nop nop

152 こんな かんじ

153 実行結果は

ええっといろんなところで紹介させていただいているのですが

ええっといろんなところで紹介させていただいているのですが アセンブラ短歌 坂井弘亮 (KOZOS プロジェクト ) Twitter ID:kozossakai ええっといろんなところで紹介させていただいているのですが こんな本を書いています フィーリングで読むアセンブラ入門 どんな内容? GCC が対応している CPU アーキテクチャのアセンブラを片っ端から出力させて 片っ端から読んでみる ( 注 ) フィーリングで 対象アーキテクチャ 40 種類 Alpha

More information

Slide

Slide Arduinoでの 組込み OS 自作体験坂井弘亮 (KOZOSプロジェクト ) TwitterID:kozossakai まず最初に連絡 事務局側で用意している USBメモリがあります FreeBSD-avr-kozos.ova という OVAファイルが入っているので, これからの説明時間中に自分の PCにコピーしてください (1GB 程度あるので, コピーに時間がかかります ) ネットからダウンロード済みのひとは不要です

More information

言語プロセッサ2005

言語プロセッサ2005 url: kameken.clique.jp/lectures/lectures2014/compiler2014/ 言語プロセッサ 2014 Language Processors 2014 平成 26 年 9 月 22 日 ( 月 ) 東京工科大学コンピュータサイエンス学部亀田弘之 まずはイントロから なぜ言語プロセッサを学ぶのか? (Why do we study a course 言語プロセッサ?)

More information

R R S S 6 S S D D S3 S3 R R S 6 S 6 S S D D w.o S3 S3 R5 3-0 R S 06 S 6 6 S S 6 D D 30 S3 w.o S3 R R8 7 3-

R R S S 6 S S D D S3 S3 R R S 6 S 6 S S D D w.o S3 S3 R5 3-0 R S 06 S 6 6 S S 6 D D 30 S3 w.o S3 R R8 7 3- 3 9 3 5 5 9 4 5 6 7 8 0 4 R R5 S S D S3 S S D S3 6 6 6 6 6 6 6 30 30 3 0 0 3 4 6 R R8 S S D S3 S S D S3 6 6 7 30 3 0 6 6 3 4 5 6 3 6 0 w.o 3R 30 3 3R3 S S D S3 S S D S3 6 6 6 4 6 6 4 4 0 0 3 6 6 6 R R9

More information

CASL入門

CASL入門 3 章 アセンブラ言語 CASLⅡ の仕様 ここでは アセンブラ言語の説明をします ちょっと待て 第 2 章の話は アセンブラ言語の話ではなかったのか と思われた人はいませんでしょうか 一般に プログラム という場合 その構成要素は次の 3 つに分かれます 1 動作のための命令加算 減算 比較などの命令 2 領域確保や定数定義など 動作しない部分 3 プログラム名の定義などこのうち 1が第 3 章で説明した部分にあたります

More information

#include <stdio.h> unsigned char x86[] = { 0x8b, 0x44, 0x24, 0x04, // mov eax,[esp+4] 0x03, 0x44, 0x24, 0x08, // add eax,[esp+8] 0xc3 // ret }; int ma

#include <stdio.h> unsigned char x86[] = { 0x8b, 0x44, 0x24, 0x04, // mov eax,[esp+4] 0x03, 0x44, 0x24, 0x08, // add eax,[esp+8] 0xc3 // ret }; int ma x86 JIT Web JavaScript x86 JIT JIT x86 JIT Windows OS DEP x86 ASLR DEP ASLR Return-Oriented Programming JIT-Spraying JavaScript JIT x86 x86 JIT How to execute arbitrary code on x86 JIT Compiler Yoshinori

More information

自己紹介 坂井弘亮 ( さかい ひろあき ) 個人でいろんな活動をしています 組込み OS 自作 (KOZOS プロジェクト ) イベントへの出展 セミナーなど ( オープンソースカンファレンス (OSC) など ) SECCON へのコミット雑誌記事や書籍執筆など

自己紹介 坂井弘亮 ( さかい ひろあき )   個人でいろんな活動をしています 組込み OS 自作 (KOZOS プロジェクト ) イベントへの出展 セミナーなど ( オープンソースカンファレンス (OSC) など ) SECCON へのコミット雑誌記事や書籍執筆など ワークショップ第 1 回多種アーキテクチャでの攻撃と防御 坂井弘亮 自己紹介 坂井弘亮 ( さかい ひろあき ) http://kozos.jp/ 個人でいろんな活動をしています 組込み OS 自作 (KOZOS プロジェクト ) イベントへの出展 セミナーなど ( オープンソースカンファレンス (OSC) など ) SECCON へのコミット雑誌記事や書籍執筆などアセンブラ短歌 六歌仙のひとり (

More information

スライド 1

スライド 1 東北大学工学部機械知能 航空工学科 2015 年度 5 セメスター クラス D 計算機工学 6. MIPS の命令と動作 演算 ロード ストア ( 教科書 6.3 節,6.4 節 ) 大学院情報科学研究科鏡慎吾 http://www.ic.is.tohoku.ac.jp/~swk/lecture/ レジスタ間の演算命令 (C 言語 ) c = a + b; ( 疑似的な MIPS アセンブリ言語 )

More information

ex05_2012.pptx

ex05_2012.pptx 2012 年度計算機システム演習第 5 回 2012.05.25 高水準言語 (C 言語 ) アセンブリ言語 (MIPS) 機械語 (MIPS) コンパイラ アセンブラ 今日の内容 サブルーチンの実装 Outline } ジャンプ 分岐命令 } j, jr, jal } レジスタ衝突 回避 } caller-save } callee-save 分岐命令 ( 復習 ) } j label } Jump

More information

r1.dvi

r1.dvi 2014 1 2014.4.10 0 / 1 / 2 / 3 Lisp 4 5 ( ) 1 (5 1 ) 5 1 1.1? 0 1 (bit sequence) 5 101 3 11 2 (binary system) 2 1000 8 1 ( ) ( )? ( 1) r1 1000 1001 r2 1002... r3 1: (memory) (address) CPU (instruction)

More information

Microsoft PowerPoint - NxLecture ppt [互換モード]

Microsoft PowerPoint - NxLecture ppt [互換モード] 011-05-19 011 年前学期 TOKYO TECH 命令処理のための基本的な 5 つのステップ 計算機アーキテクチャ第一 (E) 5. プロセッサの動作原理と議論 吉瀬謙二計算工学専攻 kise_at_cs.titech.ac.jp W61 講義室木曜日 13:0-1:50 IF(Instruction Fetch) メモリから命令をフェッチする. ID(Instruction Decode)

More information

. 61 5,000 5,000 2 61 2 10 62 5 1 2 3 9 30 6 10 3 1 969 39 61 20 330 1040 1750 1360 57 60 1 10,000 96 5 5 94 80 5 15 5 100 82 18 2

. 61 5,000 5,000 2 61 2 10 62 5 1 2 3 9 30 6 10 3 1 969 39 61 20 330 1040 1750 1360 57 60 1 10,000 96 5 5 94 80 5 15 5 100 82 18 2 1. 2. 26 9 8 26 9 22 26 9 28 3. 26 10 1 26 12 31 4. 26 10 27 1 1 3 27 1 1 2 1 2 5. 1 1000 1,000 6. 1 10,000 A 500 11 B 500 11 1,000 A B 7. 10,000 8. 1 5 5 9. 10. 11. 1 2 1 . 61 5,000 5,000 2 61 2 10 62

More information

取扱説明書 [F-08D]

取扱説明書 [F-08D] 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 a bc d a b c d 17 a b cd e a b c d e 18 19 20 21 22 a c b d 23 24 a b c a b c d e f g a b j k l m n o p q r s t u v h i c d e w 25 d e f g h i j k l m n o p q r s

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 4 回再帰的構造体 前回の出席確認演習 #include int main() { FILE *fp; int c, linecount, length, maxlength; fp=fopen("/usr/share/dict/words","r"); if (fp == NULL) return 1; linecount=0; length=0;

More information

書式に示すように表示したい文字列をダブルクォーテーション (") の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf(" 情報処理基礎 "); printf("c 言語の練習 "); printf

書式に示すように表示したい文字列をダブルクォーテーション () の間に書けば良い ダブルクォーテーションで囲まれた文字列は 文字列リテラル と呼ばれる プログラム中では以下のように用いる プログラム例 1 printf( 情報処理基礎 ); printf(c 言語の練習 ); printf 情報処理基礎 C 言語についてプログラミング言語は 1950 年以前の機械語 アセンブリ言語 ( アセンブラ ) の開発を始めとして 現在までに非常に多くの言語が開発 発表された 情報処理基礎で習う C 言語は 1972 年にアメリカの AT&T ベル研究所でオペレーションシステムである UNIX を作成するために開発された C 言語は現在使われている多数のプログラミング言語に大きな影響を与えている

More information

Microsoft PowerPoint - 11.pptx

Microsoft PowerPoint - 11.pptx ポインタと配列 ポインタと配列 配列を関数に渡す 法 課題 : 配列によるスタックの実現 ポインタと配列 (1/2) a が配列であるとき, 変数の場合と同様に, &a[0] [] の値は配列要素 a[0] のアドレス. C 言語では, 配列は主記憶上の連続領域に割り当てられるようになっていて, 配列名 a はその配列に割り当てられた領域の先頭番地となる. したがって,&a[0] と a は同じ値.

More information

スライド 1

スライド 1 Monthly Research 固定アドレスのポインタによる ASLR バイパスの理解 株式会社 FFRI http://www.ffri.jp Ver 2.00.01 1 MS13-063 マイクロソフトが 2013 年 8 月に公開したセキュリティパッチ ASLR セキュリティ機能のバイパスの脆弱性 (CVE-2013-2556) の対策を含む 今回は この脆弱性の問題点と パッチによる変更点を調査

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 4 回再帰的構造体 プログラミングを 余談 : 教えることの難しさ 丁寧に説明しないと分かってもらえない 説明すると 小難しくなる学生が目指すべきところプログラム例を説明されて理解できる違うやり方でも良いので自力で解決できる おっけー 動けば良い という意識でプログラミング 正しく動くことのチェックは必要 解答例と自分のやり方との比較が勉強になる 今日のお題 再帰的構造体

More information

スライド 1

スライド 1 1 システムコールフックを使用した攻撃検出 株式会社フォティーンフォティー技術研究所 http://www.fourteenforty.jp 取締役技術担当金居良治 2 お題目 System Call について System Call Protection System Call Hook 考察 3 System Call とは? ユーザアプリケーションからカーネルのサービスルーチンを呼び出す Disk

More information

講習No.1

講習No.1 プログラムはどこに保存され, どこで実行されるのか? 復習 ハードディスク キーボード Central Processing Unit 例えば i7, ARM, Cortex-A17 ディスプレイ 例えば 4G バイト メモリ プログラムは, ワープロ文章などと同様, ハードディスクなどにファイルとして保存されている. プログラムは, メモリ上に呼び出されて ( ロード ) 実行される. プログラムの作成

More information

第 1 回 C 言語講座 1. コンピュータって? だいたいは 演算装置 制御装置 記憶装置 入出力装置から構成されている 演算装置 CPU の一部で実際に計算を行う装置 制御装置 CPU の一部で演算装置や入出力装置 記憶装置の読み書きなどを制御する装置 記憶装置プログラムや情報 データを一時的

第 1 回 C 言語講座 1. コンピュータって? だいたいは 演算装置 制御装置 記憶装置 入出力装置から構成されている 演算装置 CPU の一部で実際に計算を行う装置 制御装置 CPU の一部で演算装置や入出力装置 記憶装置の読み書きなどを制御する装置 記憶装置プログラムや情報 データを一時的 第 1 回 C 言語講座 1. コンピュータって? だいたいは 演算装置 制御装置 記憶装置 入出力装置から構成されている 演算装置 CPU の一部で実際に計算を行う装置 制御装置 CPU の一部で演算装置や入出力装置 記憶装置の読み書きなどを制御する装置 記憶装置プログラムや情報 データを一時的 あるいは半永久的に保存する装置 CPU が直接読み書きできる主記憶装置 ( メモリ ) と データの保管などに使われる補助記憶装置

More information

1007  ステルスデバッガを利用したマルウェア解析手法の提案

1007  ステルスデバッガを利用したマルウェア解析手法の提案 マルウェア対策研究人材育成ワークショップ 2008 ステルスデバッガを利用したマルウェア 解析手法の提案 NTT 情報流通プラットフォーム研究所 川古谷裕平岩村誠伊藤光恭 2008/10/10 1 目次 背景 ステルスデバッガの提案 CCC Dataset 2008 検体による評価 考察 まとめ 2008/10/10 2 背景 マルウェアの高度化 高機能化 柔軟な機能追加 自身の隠蔽化 耐解析機能

More information

C C UNIX C ( ) 4 1 HTML 1

C C UNIX C ( ) 4 1 HTML 1 C 2007 4 18 C UNIX 1 2 1 1.1 C ( ) 4 1 HTML 1 はじめ mkdir work 作業用ディレクトリーの作成 emacs hoge.c& エディターによりソースプログラム作成 gcc -o fuga hoge.c コンパイルにより機械語に変換 コンパイルエラー./fuga 実行 実行時エラー 完成 1: work hooge.c fuga 1 4 4 1 1.

More information

Microsoft PowerPoint - iaca.ppt

Microsoft PowerPoint - iaca.ppt Intel Architecture Code Analyzer について x86/x64 最適化勉強会 #2 (2011/10/1) Shiraishi Masao 自己紹介 白石匡央 (msiro) ブログ :Coding Memorandum http://msirocoder.blog35.fc2.com/ 仕事 : 映像 Codec, トランスコーダの開発 趣味 : 競技プログラミング 変遷

More information

Microsoft Word - Cプログラミング演習(1)_2012

Microsoft Word - Cプログラミング演習(1)_2012 第 1 回 (4/16) 参考書 : [1] B.W. カーニハン,D.M. リッチー著 : プログラミング言語 C 第 2 版 ANSI 規格準拠, 共立出版, 1989 年. [2] 高橋麻奈著 : やさしい C 第 2 版, ソフトバンククリエイティブ, 2003 年. [3] 柴田望洋著 : 新版明解 C 言語入門編, ソフトバンククリエイティブ, 2004 年. [4] 林晴比古著 : 新

More information

ex04_2012.ppt

ex04_2012.ppt 2012 年度計算機システム演習第 4 回 2012.05.07 第 2 回課題の補足 } TSUBAMEへのログイン } TSUBAMEは学内からのログインはパスワードで可能 } } } } しかし 演習室ではパスワードでログインできない設定 } 公開鍵認証でログイン 公開鍵, 秘密鍵の生成 } ターミナルを開く } $ ssh-keygen } Enter file in which to save

More information

Security Solution 2008.pptx

Security Solution 2008.pptx Security Solution 2008 Windows DOS (apack, lzexe, diet, pklite) Linux (gzexe, UPX) PE PE DOS Stub Space Section Header.idata PE Header & Optional Header Space.unpack (unpack code) Section Header.unpack

More information

広報さっぽろ 2016年8月号 厚別区

広報さっぽろ 2016年8月号 厚別区 8/119/10 P 2016 8 11 12 P4 P6 P6 P7 13 P4 14 15 P8 16 P6 17 18 19 20 P4 21 P4 22 P7 23 P6 P7 24 25 26 P4 P4 P6 27 P4 P7 28 P6 29 30 P4 P5 31 P5 P6 2016 9 1 2 3 P4 4 P4 5 P5 6 7 8 P4 9 10 P4 1 b 2 b 3 b

More information

H27 28 4 1 11,353 45 14 10 120 27 90 26 78 323 401 27 11,120 D A BC 11,120 H27 33 H26 38 H27 35 40 126,154 129,125 130,000 150,000 5,961 11,996 6,000 15,000 688,684 708,924 700,000 750,000 1300 H28

More information

ex03_2012.ppt

ex03_2012.ppt 2012 年度計算機システム演習第 3 回 2012.04.27 高水準言語 (C 言語 ) 機械語 (MIPS) コンパイラ アセンブリ言語 (MIPS) アセンブラ 計算結果 今日の内容 続 言語 関数ポインタ アセンブラ言語 九九の掛け算表 sample24.c #include int mul(int x, int y){ return x * y; void kuku_mul()

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 2018/10/05 竹島研究室創成課題 第 2 回 C 言語演習 変数と演算 東京工科大学 加納徹 前回の復習 Hello, world! と表示するプログラム 1 #include 2 3 int main(void) { 4 printf("hello, world! n"); 5 return 0; 6 } 2 プログラム実行の流れ 1. 作業ディレクトリへの移動 $ cd

More information

8 / 0 1 i++ i 1 i-- i C !!! C 2

8 / 0 1 i++ i 1 i-- i C !!! C 2 C 2006 5 2 printf() 1 [1] 5 8 C 5 ( ) 6 (auto) (static) 7 (=) 1 8 / 0 1 i++ i 1 i-- i 1 2 2.1 C 4 5 3 13!!! C 2 2.2 C ( ) 4 1 HTML はじめ mkdir work 作業用ディレクトリーの作成 emacs hoge.c& エディターによりソースプログラム作成 gcc -o fuga

More information

Taro-プログラミングの基礎Ⅱ(公

Taro-プログラミングの基礎Ⅱ(公 0. 目次 2. プログラムの作成 2. 1 コラッツ問題 自然数 n から出発して n が偶数ならば 2 で割り n が奇数ならば 3 倍して 1 を足す操作を行う この操作を繰り返すと最後に 1 になると予想されている 問題 1 自然数 aの操作回数を求めよ 問題 2 自然数 aから bまでのなかで 最大操作回数となる自然数を求めよ 2. 2 耐久数 正整数の各桁の数字を掛け 得られた結果についても同様の操作を繰り返す

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション 講座を行う前に 自己紹介 僕と上回生について 1 年生同士で少しお話しよう! オリエンテーションの宿題 アルゴロジック http://home.jeita.or.jp/is/highschool/algo/index3.html どこまでできましたか? あまりできなかった人はこれから全部クリアしよう! 2016 年度 C 言語講座 第一回目 2016/6/11 fumi 今回の目標 プログラムを書いて実行するやり方を覚える

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション プログラミング応用演習 第 5 回演習 前回までのお話 ポインタ ポインタを用いた文字列処理 構造体 ファイル 再帰的構造体 リスト構造 動的メモリ管理 今日のお題 ポインタやファイルなど これまでの内容の練習 教材 以前 以下に単語を収録したファイルがあることを紹介した : /usr/share/dict/words この中からランダムに単語を取り出したファイルを用意した http://sun.ac.jp/prof/yamagu/2019app/

More information

17. (1) 18. (1) 19. (1) 20. (1) 21. (1) (3) 22. (1) (3) 23. (1) (3) (1) (3) 25. (1) (3) 26. (1) 27. (1) (3) 28. (1) 29. (1) 2

17. (1) 18. (1) 19. (1) 20. (1) 21. (1) (3) 22. (1) (3) 23. (1) (3) (1) (3) 25. (1) (3) 26. (1) 27. (1) (3) 28. (1) 29. (1) 2 1. (1) 2. 2 (1) 4. (1) 5. (1) 6. (1) 7. (1) 8. (1) 9. (1) 10. (1) 11. (1) 12. (1) 13. (1) 14. (1) 15. (1) (3) 16. (1) 1 17. (1) 18. (1) 19. (1) 20. (1) 21. (1) (3) 22. (1) (3) 23. (1) (3) 24. 1 (1) (3)

More information

kantan_C_1_iro3.indd

kantan_C_1_iro3.indd 1 章 C# の学習を始める前に プログラムの 01 基本 Keyword プログラムプログラミング言語 プログラムとは プログラムとは コンピューターへの命令の集まりです 学校の先生が プリントを持ってきて と生徒に指示した場合を考えてみましょう 先生をプログラマー ( プログラムの作成者 ) 生徒をコンピューターとしたとき プリントを持ってきて という指示がプログラムです 人間とは違い コンピューターは曖昧な指示を理解できません

More information

untitled

untitled 2005/08/02-04 1R 2R 3R QF SF FINAL 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 D 8-4 D 0-8 S1 5-8 S1

More information

Microsoft PowerPoint ppt

Microsoft PowerPoint ppt 基礎演習 3 C 言語の基礎 (5) 第 05 回 (20 年 07 月 07 日 ) メモリとポインタの概念 ビットとバイト 計算機内部では データは2 進数で保存している 計算機は メモリにデータを蓄えている bit 1bit 0 もしくは 1 のどちらかを保存 byte 1byte 1bitが8つ集まっている byte が メモリの基本単位として使用される メモリとアドレス メモリは 1byte

More information

Microsoft Word - no11.docx

Microsoft Word - no11.docx 3. 関数 3.1 関数関数は数学の関数と同じようなイメージを持つと良いでしょう 例えば三角関数の様に一つの実数値 ( 角度 ) から値を求めますし 対数関数の様に二つの値から一つの値を出すものもあるでしょう これをイメージしてもらえば結構です つまり 何らかの値を渡し それをもとに何かの作業や計算を行い その結果を返すのが関数です C 言語の関数も基本は同じです 0 cos 1 cos(0) =

More information

メソッドのまとめ

メソッドのまとめ 配列 (2) 2 次元配列, String http://jv2005.cis.k.hosei.c.jp/ 授業の前に自己点検 配列変数に格納される配列の ID と配列の実体の区別ができていますか 配列変数の宣言と配列の実体の生成の区別ができていますか メソッドの引数に配列が渡されるとき 実際に渡されるものは何ですか このことの重要な帰結は何ですか 引数の値渡しと参照渡しということばを例を挙げて説明できますか

More information

RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用

RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用 RX ファミリ用 C/C++ コンパイラ V.1.00 Release 02 ご使用上のお願い RX ファミリ用 C/C++ コンパイラの使用上の注意事項 4 件を連絡します #pragma option 使用時の 1 または 2 バイトの整数型の関数戻り値に関する注意事項 (RXC#012) 共用体型のローカル変数を文字列操作関数で操作する場合の注意事項 (RXC#013) 配列型構造体または共用体の配列型メンバから読み出した値を動的初期化に用いる場合の注意事項

More information

PowerPoint プレゼンテーション

PowerPoint プレゼンテーション MWS Cup 2017 課題 2: 静的解析 中津留勇 石淵一三 石丸傑 課題 2 担当 中津留勇 ynakatsuru[at]secureworks.com SecureWorks Japan 株式会社 石淵一三 kazumi.ishibuchi.hh[at]hitachi.com 日立製作所 石丸傑 suguru.ishimaru[at]kaspersky.com 株式会社カスペルスキー 2

More information

講習No.9

講習No.9 日本語は通常 2 バイトの文字コード.JIS コード, シフト JIS コード, Unicode (UTF-8) 等の様々な文字コードがある. アスキーコード表 (ASCII code) アスキーコード ( 値 ) 漢字変換無しでキーボードから直接入力できる半角文字 32 48 0 64 @ 80 P 96 ` 112 p 33! 49 1 65 A 81 Q 97 a 113 q 34 " 50

More information

プログラミング基礎

プログラミング基礎 C プログラミング Ⅰ 授業ガイダンス C 言語の概要プログラム作成 実行方法 授業内容について 授業目的 C 言語によるプログラミングの基礎を学ぶこと 学習内容 C 言語の基礎的な文法 入出力, 変数, 演算, 条件分岐, 繰り返し, 配列,( 関数 ) C 言語による簡単な計算処理プログラムの開発 到達目標 C 言語の基礎的な文法を理解する 簡単な計算処理プログラムを作成できるようにする 授業ガイダンス

More information

プログラミング実習I

プログラミング実習I プログラミング実習 I 05 関数 (1) 人間システム工学科井村誠孝 m.imura@kwansei.ac.jp 関数とは p.162 数学的には入力に対して出力が決まるもの C 言語では入出力が定まったひとまとまりの処理 入力や出力はあるときもないときもある main() も関数の一種 何かの仕事をこなしてくれる魔法のブラックボックス 例 : printf() 関数中で行われている処理の詳細を使う側は知らないが,

More information

memo

memo 計数工学プログラミング演習 ( 第 3 回 ) 2016/04/26 DEPARTMENT OF MATHEMATICAL INFORMATICS 1 内容 ポインタ malloc 構造体 2 ポインタ あるメモリ領域 ( アドレス ) を代入できる変数 型は一致している必要がある 定義時には値は不定 ( 何も指していない ) 実際にはどこかのメモリを指しているので, #include

More information

触媒としてのセキュリティコンテスト SECCON の現在までの取組とこれからの展望 迫良範 (SECCON 実 委員 / サイボウズ ラボ ) 寺島崇幸 a.k.a. tessy(avtokyo/sutegoma2) 宮本久仁男 (NTTデータ / 情報セキュリティ 学院 学 ) 坂井弘亮

触媒としてのセキュリティコンテスト SECCON の現在までの取組とこれからの展望 迫良範 (SECCON 実 委員 / サイボウズ ラボ ) 寺島崇幸 a.k.a. tessy(avtokyo/sutegoma2) 宮本久仁男 (NTTデータ / 情報セキュリティ 学院 学 ) 坂井弘亮 触媒としてのセキュリティコンテスト SECCON の現在までの取組とこれからの展望 迫良範 (SECCON 実 委員 / サイボウズ ラボ ) 寺島崇幸 a.k.a. tessy(avtokyo/sutegoma2) 宮本久仁男 (NTTデータ / 情報セキュリティ 学院 学 ) 坂井弘亮 ハッカー vs. クラッカー 悪いハッカー インターネット経由で機密情報を盗む? テロリスト?( ハリウッド映画の影響?)

More information

1 はじめに このアプリケーションは 計算機ハードウェア論 のアセンブリ言語 ( 超簡単命令セット ) の理解を助けるために製作されました 便宜的に機能を追加 削除した箇所があるため このアプリケーション上での動き方が実際のCPUでの動き方と異なる場合があることに留意してください このアプリケーショ

1 はじめに このアプリケーションは 計算機ハードウェア論 のアセンブリ言語 ( 超簡単命令セット ) の理解を助けるために製作されました 便宜的に機能を追加 削除した箇所があるため このアプリケーション上での動き方が実際のCPUでの動き方と異なる場合があることに留意してください このアプリケーショ アセンブリ言語 ( 超簡単命令セット版 ) 取扱説明書 平成 26 年 2 月改訂版 目次 1 はじめに 2 1.1 利用できるデータの範囲やアドレス空間 命令長についての注意 2 2 プログラムの書き方と実行の方法 3 2.1 このマニュアルでの表記について 3 2.2 入力上の注意 3 2.2.1 使用できる文字について 3 2.2.2 ラベルの付け方 3 2.3 命令長の書き方 4 2.3.1

More information

PowerPoint Presentation

PowerPoint Presentation プログラミング基礎 第 2 週 (4,5,6 回 ) 2011-10-07 出村公成 この資料の再配布を禁止します 予定 プログラミング入門 (45 分 ) 変数 入出力 分岐 演習 (90 分 ) タッチタイプ練習 統合開発環境 Codeblocksの使い方 教科書例題の打ち込みと実行 プログラミング入門 C 言語の簡単な例を体験 変数 入出力 分岐 プログラムの例リスト 2.1 改 #include

More information

slide5.pptx

slide5.pptx ソフトウェア工学入門 第 5 回コマンド作成 1 head コマンド作成 1 早速ですが 次のプログラムを head.c という名前で作成してください #include #include static void do_head(file *f, long nlines); int main(int argc, char *argv[]) { if (argc!=

More information

COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1

COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1 COMET II のプログラミング ここでは機械語レベルプログラミングを学びます 1 ここでは機械命令レベルプログラミングを学びます 機械命令の形式は学びましたね機械命令を並べたプログラムを作ります 2 その前に プログラミング言語について 4 プログラミング言語について 高級言語 (Java とか C とか ) と機械命令レベルの言語 ( アセンブリ言語 ) があります 5 プログラミング言語について

More information

(C) 2011 amenbo the 3rd MQL4; 基礎の確認 ( その 3) アメンボです しばらくぶりにノウハウ集 ( 基礎の確認 ) への追加です ( 既に知れ渡っている内容でしたら すいません アメンボは MQL 新参者ですゆえ ) 本ノウハウは Bollin_

(C) 2011 amenbo the 3rd MQL4; 基礎の確認 ( その 3) アメンボです しばらくぶりにノウハウ集 ( 基礎の確認 ) への追加です ( 既に知れ渡っている内容でしたら すいません アメンボは MQL 新参者ですゆえ ) 本ノウハウは Bollin_ MQL4; 基礎の確認 ( その 3) アメンボです しばらくぶりにノウハウ集 ( 基礎の確認 ) への追加です ( 既に知れ渡っている内容でしたら すいません アメンボは MQL 新参者ですゆえ ) 本ノウハウは Bollin_EA_08.mq4 開発過程の試行錯誤の中で理解 確認した内容です つくづく感じるのは MQLはC 言語と同じで奥が深い その割りに高度な解説書 ( 紙版 ) が少ない WEB

More information

WAGO Ch 測温抵抗体入力モジュール 取扱説明書

WAGO Ch 測温抵抗体入力モジュール 取扱説明書 WAGO-I/O-SYSTEM 750 750-450 I/O 750 750-450 4ch Copyright ª 2015 by WAGO Kontakttechnik GmbH & Co. KG All rights reserved. WAGO Kontakttechnik GmbH & Co. KG Hansastraße 27 D-32423 Minden Phone: +49 (0)

More information

Microsoft Word - CygwinでPython.docx

Microsoft Word - CygwinでPython.docx Cygwin でプログラミング 2018/4/9 千葉 数値計算は計算プログラムを書いて行うわけですが プログラムには様々な 言語 があるので そのうちどれかを選択する必要があります プログラム言語には 人間が書いたプログラムを一度計算機用に翻訳したのち計算を実行するものと 人間が書いたプログラムを計算機が読んでそのまま実行するものとがあります ( 若干不正確な説明ですが ) 前者を システム言語

More information

MODBUS ユーザーズマニュアル 페이지 1 / 23

MODBUS ユーザーズマニュアル 페이지 1 / 23 MODBUS ユーザーズマニュアル 페이지 1 / 23 目次 1. 概要... 1 2. GX7 サポートファンクションコード... 1 3. GX7 サポートリファレンス... 1 4. GX7 サポートリファレンスとファンクションコードの関係... 2 5. XD+ 内プロジェクト設定でオプション別の機能... 4 6. トラブルシューティング... 9 A. APPENDIX... 12 1.

More information

1.ppt

1.ppt /* * Program name: hello.c */ #include int main() { printf( hello, world\n ); return 0; /* * Program name: Hello.java */ import java.io.*; class Hello { public static void main(string[] arg)

More information

Microsoft PowerPoint - Lecture ppt [互換モード]

Microsoft PowerPoint - Lecture ppt [互換モード] 2012-05-31 2011 年前学期 TOKYO TECH 固定小数点表現 計算機アーキテクチャ第一 (E) あまり利用されない 小数点の位置を固定する データ形式 (2) 吉瀬謙二計算工学専攻 kise_at_cs.titech.ac.jp W641 講義室木曜日 13:20-14:50-2.625 符号ビット 小数点 1 0 1 0 1 0 1 0 4 2 1 0.5 0.25 0.125

More information

プログラミング言語処理系論 (4) Design and Implementation of Programming Language Processors

プログラミング言語処理系論 (4) Design and Implementation of Programming Language Processors プログラミング言語処理系論 (6) Design and Implementation of Programming Language Processors 佐藤周行 ( 情報基盤センター / 電気系専攻融合情報学コース ) 2014-5 の残業から Perl の吐き出すコードをながめてみる Parser Kit 中の vcc6.y をながめてみる 文法定義 パースツリーの格納 実行 fact.pl

More information

SOC Report

SOC Report Apache-Tomcat と冗長な UTF-8 表現 (CVE-2008-2938 検証レポート ) N T T コミュニケーションズ株式会社 IT マネジメントサービス事業部セキュリティオペレーションセンタ 2009 年 5 月 26 日 Ver. 1.1 1. 調査概要... 3 2. UTF-8 とは... 3 3. CVE-2008-2938... 4 3.1..( ピリオド ) について...

More information

レースは API 関数の先頭にソフトウェアブレークポイントを設置することで, 実現することが出来る. しかし, ソフトウェアブレークポイントを利用したブレークポイントは, 命令を置き換えるため, プログラムのチェックサムを監視するようなアンチデバッグ機能に検知されてしまうという問題がある. 2.2

レースは API 関数の先頭にソフトウェアブレークポイントを設置することで, 実現することが出来る. しかし, ソフトウェアブレークポイントを利用したブレークポイントは, 命令を置き換えるため, プログラムのチェックサムを監視するようなアンチデバッグ機能に検知されてしまうという問題がある. 2.2 メモリ拡張によるアドレスに依存しないブレークポイント技術の提案 中山心太 青木一史 川古谷裕平 岩村誠 伊藤光恭 NTT 情報流通プラットフォーム研究所 180-8585 東京都武蔵野市緑町 3-9-11 {nakayama.shinta, aoki.kazufumi, kawakoya.yuhei, iwamura.makoto, itoh.mitsutaka }@lab.ntt.co.jp あらまし近年,

More information

slide4.pptx

slide4.pptx ソフトウェア工学入門 第 4 回ライブラリ関数 ライブラリ関数 stdio stdio : 標準入出力ライブラリ カーネルレベルのストリームに API を追加し インタフェースを提供する カーネル fd read(2) write(2) stdio バッファ BUFSIZ プログラム BUFSIZ ごと 小さい単位 バッファ : 一時的にデータを保存しておく場所のことバッファリング : バッファを経由してデータをやり取りすること

More information

講習No.8

講習No.8 配列変数の要素 復習 int x[5]; x[0] x[1] x[2] x[3] x[4] 5 は配列の要素数 これらの変数をそれぞれ配列の要素と呼ぶ この数字を配列の添え字, またはインデックスと呼ぶ! 重要! インデックスの最大値 = 要素数ー 1 int x = 7; float aa[x]; int x = 7; float aa[7];! 重要! 配列宣言時の要素数は定数でなければならない

More information

SuperH RISC engine C/C++ コンパイラ Ver.7 不具合内容 - 過去のお知らせ SuperH RISC engine C/C++ コンパイラ Ver.7 台における不具合内容を以下に示します のチェックツールをルネサスエレクトロニクス株式会社のホームページ

SuperH RISC engine C/C++ コンパイラ Ver.7 不具合内容 - 過去のお知らせ SuperH RISC engine C/C++ コンパイラ Ver.7 台における不具合内容を以下に示します のチェックツールをルネサスエレクトロニクス株式会社のホームページ SuperH RISC engine C/C++ コンパイラ Ver.7 不具合内容 - 過去のお知らせ SuperH RISC engine C/C++ コンパイラ Ver.7 台における不具合内容を以下に示します 1. 2. 4. のチェックツールをルネサスエレクトロニクス株式会社のホームページより入手できます http//tool-support.renesas.com/jpn/toolnews/shc/shcv7/dr_shcv7_4.html

More information

2

2 ( ) 1 1 2 3000 2500 2000 1500 1000 500 0-500 -1000-1500 18 2000 2001 2002 2003 2004 2005 2006 2007 2008 2009 2010 2011 2012 2013 2014 2015 2016 2017 2018 3 3 1980 ( ) 1980 43 87 33 10 10 2001 80 07 58.6

More information

94.7 H22 H22 140,000 120,000 3.31 3.24 3.02 2.85 116,435 122,529 126,317 3.5 3 100,000 80,000 77,498 93,159 105,099 112,878 2.73 2.62 2.51 2.5 2 60,000 40,000 20,000 23,412 28,790 34,786 39,571

More information

untitled

untitled P125(2) ()()()() ()()() ()()()()()()() 1 - - - - - - - - - - - - - - -1 - - - 105 105 105120 105120 105120 105120 105120 90 90 90 90 90 105 105 105 105 105120 105120 105120 105120 90 90 90 90 85 85 85

More information

Taro12-第4回意見募集結果(改訂

Taro12-第4回意見募集結果(改訂 - - - - - - - - - - - - - - HP - - - - - - - - - - - - - - -

More information

平成16年度外務省事後評価実施計画策定について

平成16年度外務省事後評価実施計画策定について 2005 1 HP http://www.mofa.go.jp/mofaj/area/n_korea/index.html http://www.mofa.go.jp/mofaj/area/n_korea/abd/rachi_mondai.html HP http://www.mofa.go.jp/mofaj/area/n_korea/abd/6kaigo3_gh.html http://www.mofa.go.jp/mofaj/press/danwa/17/dga_0414b.html

More information

2 4 5 6 7 8 9 HP 10 11 12 14 15 , 16 17 18 19 20 21 22 24 25 26 27 28 29 30 31 34 35 36 37 38 39, 40 41 42 43 44 45 46 47 48 49 50 51 52 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 1 70 71 72

More information

Vol..3 2010 2 10 2

Vol..3 2010 2 10 2 1 Vol..3 2010 2 10 2 Vol..3 2010 2 10 3 Vol..3 2010 2 10 4 Vol..3 2010 2 10 5 Vol..3 2010 2 10 6 Vol..3 2010 2 10 7 Vol..3 2010 2 10 8 Vol..3 2010 2 10 9 Vol..3 2010 2 10 10 Vol..3 2010 2 10 11 Vol..3

More information

2009-9-2.indd

2009-9-2.indd Q No.1441 Q No.1442 Vol.33 NO.9 (2009) 30 (614) Q No.1443 Vol.33 NO.9 (2009) 31 (615) Q No.1444 Vol.33 NO.9 (2009) 32 (616) Vol.33 NO.9 (2009) 33 (617) Vol.33 NO.9 (2009) 34 (618) Q No.1445 Vol.33 NO.9

More information

untitled

untitled Vol.27 1 Vol.27 2 Vol.27 3 Vol.27 4 Vol.27 5 Vol.27 6 Vol.27 7 Vol.27 8 Vol.27 9 Vol.27 10 11 Vol.27 Vol.27 12 Vol.27 13 Vol.27 14 Vol.27 15 Vol.27 16 Vol.27 17 Vol.27 2007 10 29 18 http://www.nira.or.jp/index.html

More information