\documentclass{article}
\usepackage[utf8]{inputenc}
\usepackage{pgf, tikz}
\usetikzlibrary{shapes, chains, calc, arrows, positioning}
\begin{document}
\begin{center}
\begin{tikzpicture}[%
>=triangle 60,
start chain=going below,
node distance=6mm and 60mm,
every join/.style={norm},
]
\tikzset{
base/.style={draw, on chain, on grid, align=center, minimum height=4ex},
zbox/.style={base, rectangle, text width=8em},
ebox/.style={base, diamond, aspect=1.5, text width=10em},
term/.style={zbox, rounded corners},
norm/.style={->, draw},
coord/.style={coordinate, on chain, on grid, node distance=6mm and 25mm}}
\node [zbox] (z1) {\verb"R0 <- 13"};
\node [above=0mm of z1, text width=8em] {$Z_{1}$};
\node [zbox] (z2) {\verb"R1 <- R0 <| 8"};
\node [above=0mm of z2, text width=8em] {$Z_{2}$};
\draw [->] (z1) -- (z2);
\node [zbox] (z3) {\verb"R2 <- R1 --"};
\node [above=0mm of z3, text width=8em] {$Z_{3}$};
\draw [->] (z2) -- (z3);
\node [ebox] (z4) {\verb"R2 == 17"};
\node [above=0mm of z4, text width=8em] {$Z_{4}$};
\draw [->] (z3) -- (z4);
\node [zbox, below=of z4.west, yshift=-4em] (z5) {\verb"R3 <- R2 - R1"};
\node [above=0mm of z5, text width=8em] {$Z_{5}$};
\draw [->] (z4.west) -- (z5);
\node [zbox] (z6) {\verb"R0 <- R3 not R1"};
\node [above=0mm of z6, text width=8em] {$Z_{6}$};
\draw [->] (z5) -- (z6);
\node [zbox] (z7) {\verb"R1 <- R0 + R0"};
\node [above=0mm of z7, text width=8em] {$Z_{7}$};
\draw [->] (z6) -- (z7);
\draw [->] (z4.east) |- (z1);
\end{tikzpicture}
\end{center}
\end{document}
|