\documentclass{minimal}
\pagestyle{empty}

\usepackage{pstricks}
\usepackage{pst-node}

\begin{document}

\begin{psmatrix}[mnode=oval, colsep=2cm, rowsep=2cm]
[mnode=R,name=res]{sys\_res\_n} &
[name=idle]{\shortstack{\textbf{idle}\\bs:=0;\\take:=0;\\do\_it:=0;}} &
[name=take]{\shortstack{\textbf{\"ubernehmen}\\take:=1;\\char:=$b_0$;}} \\
%%
[name=doit]{\shortstack{\textbf{enter}\\do\_it:=1;}} &
&
[name=mod]{\shortstack{\textbf{mod}\\$b_0$:=data;}} \\
%%
&
[name=read]{\shortstack{\textbf{read}\\$b_0$:=data;}} &
[name=bs]{\shortstack{\textbf{l\"oschen}\\backspace:=1;\\take:=1;}} \\
\end{psmatrix}

\psset{arrows=->, shortput=nab}

\ncline[linestyle=dotted]{res}{idle}

\ncarc[arcangle=25]{idle}{read}\ncput*[npos=.43]{new\_data$\uparrow$}
\ncarc[arcangle=25]{read}{idle}\ncput*[npos=.43]{ung\"ultiges byte}

\ncarc[arcangle=-25]{read}{bs}\ncput*[npos=.50]{$b_0 = 0x0e$}
\ncarc[arcangle=25]{read}{doit}\ncput*[npos=.50]{$b_0 = 0x1c$}

\ncarc[arcangle=0]{read}{mod}\ncput*[npos=.40]{$b_0 = 0xe0$}
\ncarc[arcangle=-40]{mod}{take}\ncput*[npos=.40]{g\"ultiges zeichen}
\ncarc[arcangle=-25]{mod}{idle}\ncput*[npos=.53]{ung\"ultiges byte}

\ncarc[arcangle=0]{bs}{idle}
\ncarc[arcangle=25]{doit}{idle}\ncput*[npos=.50]{finished\_result$\uparrow$}
\ncarc[arcangle=-25]{take}{idle}
\end{document}
