Here's one possibility using \foreach and its evaluate=<variable> as <macro> using <formula> and count=<macro> from <value> syntax:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{shapes,shapes.geometric,arrows,fit,calc,positioning,automata,}
\usepackage{amsmath}
\definecolor{myblue}{RGB}{153,205,255}
\begin{document}
\begin{tikzpicture}[shorten >=1pt,auto,node distance=3 cm, scale = 1.0, transform shape,>=latex]
\tikzset{int/.style={draw, minimum size=4em,fill=myblue}}
\tikzset{every edge/.append style={font=\Large}}
\tikzset{every node/.append style={font=\Large}}
\node[state,minimum size=3 cm,fill=myblue] (A) {};
\node[state,minimum size=3 cm,fill=myblue] (B) [right of=A,node distance=6 cm] {};
\node[int] (C) [above of=A] { };
\node[int] (D) [below of=A] { };
\node[int] (E) [above of=B] { };
\node[int] (F) [below of=B] { };
\path[->] (A) edge [] node [] {} (C);
\path[->] (C) edge [] node [] {} (E);
\path[->] (E) edge [] node [] {} (B);
\path[->] (B) edge [] node [] {} (F);
\path[->] (F) edge [] node [] {} (D);
\path[->] (D) edge [] node [] {} (A);
\draw[<-] (A.180) -- +(-0.5,0);
\draw[->] (B.0) -- +(0.5,0);
\foreach \angle [evaluate=\angle as \langle using 180+\angle] in {0,45,90,135}
{
\draw (A.\angle) -- (A.\langle);
\draw (B.\angle) -- (B.\langle);
}
\foreach \angle [evaluate=\angle as \labangle using \angle+67.5,count=\anglei from 0] in {0,-45,...,-315}
\node at ( $ (A) + (\labangle:1cm) $ ) {\anglei};
\end{tikzpicture}
\end{document}

To get labels on the circles, one can always use a \foreach loop over two explicit variables: the first one controlling the angle for the labels and the other one, the label itself; of course, if there's some relationship between the angle and the label, one can use the evaluate=<variable> as <macro> using <formula> syntax to simplify things; the following example illustrates this:
\documentclass{article}
\usepackage{tikz}
\usetikzlibrary{calc,positioning,automata}
\definecolor{myblue}{RGB}{153,205,255}
\begin{document}
\begin{tikzpicture}
\node[state,minimum size=3 cm,fill=myblue] (A) {};
\node[state,minimum size=3 cm,fill=myblue] (B) [right of=A,node distance= 6cm] {};
\foreach \angle [evaluate=\angle as \langle using 180+\angle] in {0,45,90,135}
{
\draw (A.\angle) -- (A.\langle);
\draw (B.\angle) -- (B.\langle);
}
\foreach \angle/\label in {67.5/-5,22.5/4,-22.5/6,-67.5/-1,-112.5/7,-157.5/-8,-202.5/-2,-247.5/0}
\node at ( $ (A) + (\angle:1cm) $ ) {\label};
\foreach \angle [evaluate=\angle as \langle using (292.5+\angle)/30] in {67.5,22.5,...,-247.5}
\node at ( $ (B) + (\angle:1cm) $ ) {\langle};
\end{tikzpicture}
\end{document}
