Updated the register and memory layout figure.
This commit is contained in:
+19
-8
@@ -6,27 +6,38 @@ Eight 32-bit general purpose registers are available for holding operands and me
|
||||
mov r1, bp - sizeof(void *)
|
||||
\end{verbatim}
|
||||
Finally we have the Program Counter which contains a 32 bit address that points to the next instruction to execute.
|
||||
\tikzstyle{blockRow} = [rectangle, minimum width=10cm, minimum height=0.5cm, text centered, draw=black]
|
||||
|
||||
\def\minY{-5} \def\maxY{5}
|
||||
\def\minX{-5} \def\maxX{5}
|
||||
\begin{figure}[h]
|
||||
\centering
|
||||
\begin{tikzpicture}[node distance=0cm]
|
||||
\node [draw, fit={(\minX, 0) (0, 0.5)}, label=center:Status Register (Flags)] (flags) {};
|
||||
%\draw (\minX,0.5) node[above=1em] {31} rectangle (0, 1) node[midway] {Status Register (Flags)} node[above] (lsb) {0};
|
||||
\node [draw, fit={(\minX, 0) (0, 0.5)}, label=center:Flags] (flags) {};
|
||||
\node [draw, fit={(\minX, -1) (0, -1.5)}, label=center:r1] (r1) {};
|
||||
\node [draw, fit={(\maxX / 2, 0) (\maxX, \minY)}, label=center:Memory] (memory) {};
|
||||
|
||||
\draw (flags);
|
||||
\node[above =of flags] {Status Register};
|
||||
\node[above left=of flags] {31};
|
||||
\node[above right=of flags] {0};
|
||||
|
||||
%\draw (\minX,-\pos / 2 - 0.5) rectangle (0, -\pos / 2) node[midway] (register1) {r1};
|
||||
\draw (r1);
|
||||
\node[above=of r1] {General Purpose Registers};
|
||||
\node[above left=of r1] {31};
|
||||
\node[above right=of r1] {0};
|
||||
|
||||
\foreach \pos in {1,...,8} {
|
||||
\draw (\minX,-\pos / 2 - 0.5) rectangle (0, -\pos / 2) node[midway] (register\pos) {r\pos};
|
||||
\foreach \pos in {2,...,8} {
|
||||
\node [draw, fit={(\minX, -\pos) (0, -\pos - 0.5)}, label=center:r\pos] (r\pos) {};
|
||||
\draw (r\pos);
|
||||
}
|
||||
%\draw node[above=of register1] {General Purpose Registers};
|
||||
|
||||
\draw (\maxX / 2, 1) rectangle (\maxX, \minY) node[midway] {Memory};
|
||||
\draw (memory);
|
||||
\node [above =of memory] {Linear Memory (2\textsuperscript{32} Bytes)};
|
||||
\node [above right =of memory, yshift=-1em] {0x00000000};
|
||||
\node [below right =of memory, yshift=1em] {0xFFFFFFFF};
|
||||
|
||||
%\draw (memory.north east) -- (memory.south west);
|
||||
%\node at (memory.south east) {test};
|
||||
\end{tikzpicture}
|
||||
\caption{Register Bit Layout}
|
||||
\end{figure}
|
||||
|
||||
Reference in New Issue
Block a user