Please note the symbol node style which should have the right font setup for the special font. My positioning-plus has been used for the keys west below which can be replaced with original positioning and TikZ keys: west below=<distance> of node is the same as below=<distance> of node.south west, anchor=north west.
Code
\documentclass[tikz,convert=false]{standalone}%
\usetikzlibrary{chains,positioning-plus}
\pgfkeys{%
/handlers/.tikz/.code=\pgfkeys{\pgfkeyscurrentpath/.code=\tikzset{#1}},%
/handlers/.append tikz/.code=\pgfkeys{\pgfkeyscurrentpath/.append code=\tikzset{#1}},%
/handlers/.prefix tikz/.code=\pgfkeys{\pgfkeyscurrentpath/.prefix code=\tikzset{#1}}}
\newcommand*{\letterset}{\pgfqkeys{/letter}}
\letterset{
@int/start chain/.style={start chain=ch#1 going right},
columns/.initial=8,
rows/.initial={0,0,0,0,0,0,0},
column width/.initial=+.5cm,
row height/.initial=+.6cm,
%
every letter picture/.tikz={
node distance=+0pt,
every node/.append style={
minimum width=\pgfkeysvalueof{/letter/column width},
minimum height=\pgfkeysvalueof{/letter/row height},
text depth=+0pt,
outer sep=+0pt,
}},
every header label/.tikz={font=\tiny,rotate=90,inner sep=+0pt,outer sep=+0pt},
every cell node/.tikz={draw=gray, ultra thin},
every 1 node/.tikz={fill=black},
every 0 node/.tikz={},
data column node/.tikz={
align=right,
text width=\widthof{000}
},
symbol node/.tikz={
font=\ttfamily}% Here should stand the command for the XeTeX font
}
\makeatletter
\newcommand{\letterChart}[4][]{%
\begingroup
\pgfqkeys{/letter}{#1}%
\pgfkeysgetvalue{/letter/columns}\letter@Columns
\pgfmathsetbasenumberlength{\letter@Columns}%
\pgfkeysgetvalue{/letter/rows}\letter@Rows
\tikzpicture[/letter/every letter picture/.try, /letter/@int/start chain/.list/.expanded={0,1,...,\letter@Columns}]
\node[anchor=west,/letter/head node/.try] (letter@head) {Bit Values of Pixels};
\foreach \letter@Power in {1,...,\letter@Columns} {
\ifnum\letter@Power=1\tikzset{/letter/@int/first node/.tikz={west below=of letter@head}}\fi
\node[on chain=ch0,/letter/@int/first node/.try,/letter/header node/.try,label={[/letter/every header label/.try]center:\pgfmathprint{int(2^(\letter@Columns-\letter@Power))}}] {};
}
\foreach \letter@Row[count=\c@prevRow from 0, count=\c@Row] in \letter@Rows {%
\pgfmathbin{\letter@Row}
\edef\letter@Digits{\expandafter\letter@IncludeComma\pgfmathresult\stop@Letter}
\foreach \letter@Digit[count=\c@Col] in \letter@Digits{
\ifnum\c@Col=1\tikzset{/letter/@int/first node/.tikz={below=of ch\c@prevRow-begin}}\fi
\node[on chain=ch\c@Row,/letter/@int/first node/.try,/letter/every cell node/.try, /letter/every \letter@Digit\space node/.try] {};
}
\node[/letter/data column node/.try, right=\pgfkeysvalueof{/letter/column width} of ch\c@Row-end] (letter@datacolumn) {\letter@Row};
}
\node[anchor=base east, /letter/head node/.try] at (letter@datacolumn.east|-letter@head.base) {Data};
\node[below=\pgfkeysvalueof{/letter/row height} of letter@datacolumn, /letter/data column node/.try] (letter@ascii) {#3};
\node[mid left=of letter@ascii] {ASCII Code:};
\node[below=of letter@ascii, /letter/data column node/.try] (letter@screen) {#4};
\node[mid left=of letter@screen] {Screen Code:};
\node[anchor=base west, /letter/symbol node/.try] at (letter@ascii.base-|letter@head.base west) {#2};
\endtikzpicture
\endgroup
}
\def\letter@IncludeComma#1#2{%
#1%
\ifx\stop@Letter#2
\expandafter\pgfutil@gobble
\else
\expandafter\pgfutil@firstofone
\fi
{,\letter@IncludeComma#2}}
\makeatother
\begin{document}
\letterChart[rows={60,102,110,110,96,98,60,0}]{@}{64}{0}
\letterChart[rows={24,60,102,102,126,102,102,0}]{A}{65}{1}
\letterChart[rows={124,102,102,124,102,102,124,0}]{B}{66}{2}
\letterset{
every letter picture/.append tikz={node distance=+3pt},
/tikz/nodes={minimum width=\pgfkeysvalueof{/letter/column width}-3pt,
minimum height=\pgfkeysvalueof{/letter/row height}-3pt},
every cell node/.append tikz={shape=circle,draw=none},
column width/.initial=+.5cm,
row height/.initial=+.5cm}
\letterChart[rows={60,102,110,110,96,98,60,0}]{@}{64}{0}
\letterChart[rows={24,60,102,102,126,102,102,0}]{A}{65}{1}
\letterChart[rows={124,102,102,124,102,102,124,0}]{B}{66}{2}
\end{document}
Output


tabularenvironment model and fill cells as needed. – Fran Aug 06 '13 at 19:49pdfcropand insert as graphics. – Ethan Bolker Aug 06 '13 at 20:10