Browse Source

more explanation about direction of bits in fig 5.8

Jeremy Siek 7 years ago
parent
commit
dbc2fbdff4
1 changed files with 9 additions and 5 deletions
  1. 9 5
      book.tex

+ 9 - 5
book.tex

@@ -4357,7 +4357,11 @@ The problem of distinguishing between pointers and other kinds of data
 also arises inside of each tuple. We solve this problem by attaching a
 tag, an extra 64-bits, to each tuple. Figure~\ref{fig:tuple-rep} zooms
 in on the tags for two of the tuples in the example from
-Figure~\ref{fig:copying-collector}. Part of each tag is dedicated to
+Figure~\ref{fig:copying-collector}. Note that we have drawn the bits
+in a big-endian way, from right-to-left, with bit location 0 (the
+least significant bit) on the far right, which corresponds to the
+directionality of the x86 shifting instructions \key{salq} (shift
+left) and \key{sarq} (shift right). Part of each tag is dedicated to
 specifying which elements of the tuple are pointers, the part labeled
 ``pointer mask''. Within the pointer mask, a 1 bit indicates there is
 a pointer and a 0 bit indicates some other kind of data. The pointer
@@ -4366,10 +4370,10 @@ size of 50 elements, so we just need 50 bits for the pointer mask. The
 tag also contains two other pieces of information. The length of the
 tuple (number of elements) is stored in bits location 1 through
 6. Finally, the bit at location 0 indicates whether the tuple has yet
-to be copied to the ToSpace.  If the bit has value 1, then this
-tuple has not yet been copied.  If the bit has value 0 then the entire
-tag is in fact a forwarding pointer. (The lower 3 bits of an pointer
-are always zero anyways because our tuples are 8-byte aligned.)
+to be copied to the ToSpace.  If the bit has value 1, then this tuple
+has not yet been copied.  If the bit has value 0 then the entire tag
+is in fact a forwarding pointer. (The lower 3 bits of an pointer are
+always zero anyways because our tuples are 8-byte aligned.)
 
 \begin{figure}[tbp]
 \centering \includegraphics[width=0.8\textwidth]{figs/tuple-rep}