# HG changeset patch # User Masataka Kohagura # Date 1455710462 -32400 # Node ID 4947e0eed9d8723f3ce73ee37929fd61172d8cdb # Parent 99ddf7f900dc5ec9ca3598ea1845346ab4987a4f fix diff -r 99ddf7f900dc -r 4947e0eed9d8 paper/c4.tex --- 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] diff -r 99ddf7f900dc -r 4947e0eed9d8 paper/images/example/dividefile.pdf Binary file paper/images/example/dividefile.pdf has changed diff -r 99ddf7f900dc -r 4947e0eed9d8 paper/images/image.graffle --- 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 @@ MasterSheets ModificationDate - 2016-02-17 11:43:32 +0000 + 2016-02-17 11:52:21 +0000 Modifier MasaKoha NotesVisible @@ -28415,47 +28415,6 @@ Bounds - {{112.10830890726078, 260.78740394096673}, {100.62992217287302, 30}} - Class - ShapedGraphic - FitText - Vertical - Flow - Resize - ID - 48 - Style - - fill - - Draws - NO - - shadow - - Draws - NO - - stroke - - Draws - NO - - - Text - - Text - {\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} - - - - Bounds {{617.38390404288373, 90.708662240336253}, {93.543307935346888, 30}} Class ShapedGraphic @@ -81764,7 +81723,7 @@ WindowInfo CurrentSheet - 9 + 8 Expanded_Canvases cctree @@ -81783,9 +81742,9 @@ TopSlabHeight 682 VisibleRegion - {{542.13483146067415, -85.999999999999957}, {679.77528089887642, 1102.2471910112361}} + {{0, -99}, {605, 981}} Zoom - 0.89000000000000001 + 1 ZoomValues diff -r 99ddf7f900dc -r 4947e0eed9d8 paper/master_paper.pdf Binary file paper/master_paper.pdf has changed