\documentclass[11pt]{scrartcl}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing}
\begin{document}
\begin{tikzpicture}
\foreach \c/\i [count=\n] in
{blue!20/0001,red!20/0001,red!20/0010,red!20/0100,white/\dots,yellow!20/0100}
\node[draw,fill=\c,minimum height=1cm,minimum width = 2cm,xshift=\n*2cm](N\n){\i} ;
\draw [decoration={brace,mirror,raise=5pt},decorate] (N1.south west) -- node[below=10pt]{$M_0$}(N1.south east);
\draw [decoration={brace,mirror,raise=5pt},decorate] (N1.south east) -- node[below=10pt]{$M_1$}(N4.south east);
\end{tikzpicture}
\end{document}

Update : Gonzalo was faster than me ! My code below is not complete I stop it when I saw the good answer of Gonzalo. I put my idea because I find a great difficulty. In my idea the connecting boxes contained numbers. here the result :
\documentclass[11pt]{scrartcl}
\usepackage{tikz}
\usetikzlibrary{decorations.pathreplacing,shapes}
\begin{document}
\begin{tikzpicture}
\node[tape, draw,fill=red!20, tape bend top=none,rotate=90,minimum width=1cm,minimum height=2cm] at (7.92, 0) {};
\node[tape, draw,fill=yellow!20, tape bend bottom=none,rotate=90,minimum width=1cm,minimum height=2cm] at (12, 0) {};
\foreach \c/\i/\b [count=\n] in
{blue!20/0001/1,red!20/0001/1,red!20/0010/1,/0100/0,//0,/0100/0}
{\ifnum \b=1
\node[draw,fill=\c,minimum height=1cm,minimum width = 2cm,xshift=\n*2cm](N\n){\i} ;
\else
\node[minimum height=1cm,minimum width = 2cm,xshift=\n*2cm](N\n){\i} ;
\fi }
\draw [decoration={brace,mirror,raise=5pt},decorate] (N1.south west) -- node[below=10pt]{$M_0$}(N1.south east);
\draw [decoration={brace,mirror,raise=5pt},decorate] (N1.south east) -- node[below=10pt]{$M_1$}(N4.south east);
\end{tikzpicture}
\end{document}
The difficulty is real ! because I can't rotate nodes with numbers inside.

color=colorname
option. – Roelof Spijker Dec 12 '11 at 16:30tikz
originally, I stuck to it.:)
– Werner Dec 12 '11 at 18:40