Mercurial > hg > Papers > 2016 > masa-master
changeset 77:4947e0eed9d8
fix
author | Masataka Kohagura <kohagura@cr.ie.u-ryukyu.ac.jp> |
---|---|
date | Wed, 17 Feb 2016 21:01:02 +0900 |
parents | 99ddf7f900dc |
children | 853969608995 |
files | paper/c4.tex paper/images/example/dividefile.pdf paper/images/image.graffle paper/master_paper.pdf |
diffstat | 4 files changed, 20 insertions(+), 47 deletions(-) [+] |
line wrap: on
line diff
--- a/paper/c4.tex Wed Feb 17 20:50:15 2016 +0900 +++ b/paper/c4.tex Wed Feb 17 21:01:02 2016 +0900 @@ -7,7 +7,7 @@ \section{文字列処理の並列処理} 文字列処理を並列で処理する場合を考える。 -まずファイルを読み込み、ファイルをある一定の大きさで分割する(divide a file)。 +まずファイルを読み込み、ファイルをある一定の大きさで分割する。 そして、分割されたファイル(Input Data)に対して文字列処理(Task)をおこない、それぞれの分割単位で結果を出力する(Output Data)。 それらの Output Data の結果が出力されたあとに、結果をまとめる処理を行う(Print Task)。 (図\ref{fig:dividefile}) @@ -521,12 +521,26 @@ ソースコード\ref{src:cc} \begin{lstlisting}[frame=lrbt,label=src:cc,caption=文字クラスの構造体,numbers=left] +typedef struct utf8Range { + unsigned long begin; + unsigned long end; +} RangeList , *RangeListPtr; +typedef struct condition { + RangeList range; +} Condition, *ConditionList; + +typedef struct charClass { + struct charClass *left; + struct charClass *right; + Condition cond; + int stateNum; + BitVector nextState; +} CharClass, *CharClassPtr; \end{lstlisting} Subset Construction は、ある状態から 1 つの入力に対して複数の状態遷移先がある場合、それらの状態 1 つの新しい状態としてまとめ、その新しい状態から新しい遷移先を構成しそれを繰り返す手法である。 -図\ref{fig:nfaex}内で入力によって複数の状態に遷移する状態 4 だけに着目する。 状態 4 は [a-z] が入力されると状態 4 に遷移し、b が入力されると状態 2 に遷移する。このとき、b が入力されると状態 2 か状態 4 のどちらかに遷移することになる。(図\ref{fig:nfa}) \begin{figure}[htpb]
--- a/paper/images/image.graffle Wed Feb 17 20:50:15 2016 +0900 +++ b/paper/images/image.graffle Wed Feb 17 21:01:02 2016 +0900 @@ -26,7 +26,7 @@ <key>MasterSheets</key> <array/> <key>ModificationDate</key> - <string>2016-02-17 11:43:32 +0000</string> + <string>2016-02-17 11:52:21 +0000</string> <key>Modifier</key> <string>MasaKoha</string> <key>NotesVisible</key> @@ -28415,47 +28415,6 @@ <array> <dict> <key>Bounds</key> - <string>{{112.10830890726078, 260.78740394096673}, {100.62992217287302, 30}}</string> - <key>Class</key> - <string>ShapedGraphic</string> - <key>FitText</key> - <string>Vertical</string> - <key>Flow</key> - <string>Resize</string> - <key>ID</key> - <integer>48</integer> - <key>Style</key> - <dict> - <key>fill</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>shadow</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - <key>stroke</key> - <dict> - <key>Draws</key> - <string>NO</string> - </dict> - </dict> - <key>Text</key> - <dict> - <key>Text</key> - <string>{\rtf1\ansi\ansicpg932\cocoartf1404\cocoasubrtf340 -{\fonttbl\f0\fnil\fcharset0 HelveticaNeue;} -{\colortbl;\red255\green255\blue255;} -\deftab720 -\pard\pardeftab720\qc\partightenfactor0 - -\f0\fs32 \cf0 divide a file}</string> - </dict> - </dict> - <dict> - <key>Bounds</key> <string>{{617.38390404288373, 90.708662240336253}, {93.543307935346888, 30}}</string> <key>Class</key> <string>ShapedGraphic</string> @@ -81764,7 +81723,7 @@ <key>WindowInfo</key> <dict> <key>CurrentSheet</key> - <integer>9</integer> + <integer>8</integer> <key>Expanded_Canvases</key> <array> <string>cctree</string> @@ -81783,9 +81742,9 @@ <key>TopSlabHeight</key> <real>682</real> <key>VisibleRegion</key> - <string>{{542.13483146067415, -85.999999999999957}, {679.77528089887642, 1102.2471910112361}}</string> + <string>{{0, -99}, {605, 981}}</string> <key>Zoom</key> - <real>0.89000000000000001</real> + <real>1</real> <key>ZoomValues</key> <array> <array>