Rilettura, secondo capitolo
[gapil.git] / socket.tex
index 6358905b77f43a107c8f6d03ada9248e80f86c95..eb43ce5543297c17fdde1245a191a65d2bd6c609 100644 (file)
@@ -1,6 +1,6 @@
 %% socket.tex
 %%
 %% socket.tex
 %%
-%% Copyright (C) 2000-2004 Simone Piccardi.  Permission is granted to
+%% Copyright (C) 2000-2005 Simone Piccardi.  Permission is granted to
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Un preambolo",
 %% copy, distribute and/or modify this document under the terms of the GNU Free
 %% Documentation License, Version 1.1 or any later version published by the
 %% Free Software Foundation; with the Invariant Sections being "Un preambolo",
@@ -750,6 +750,14 @@ due modi, chiamati rispettivamente \textit{big endian} e \textit{little
 variabili intere (ed in genere in diretta corrispondenza a come sono poi in
 realtà cablati sui bus interni del computer).
 
 variabili intere (ed in genere in diretta corrispondenza a come sono poi in
 realtà cablati sui bus interni del computer).
 
+\begin{figure}[htb]
+  \centering
+  \includegraphics[height=3cm]{img/endianess}
+  \caption{Schema della disposizione dei dati in memoria a seconda della
+    \textit{endianess}.}
+  \label{fig:sock_endianess}
+\end{figure}
+
 Per capire meglio il problema si consideri un intero a 32 bit scritto in una
 locazione di memoria posta ad un certo indirizzo. Come illustrato in
 fig.~\ref{fig:sock_endianess} i singoli bit possono essere disposti un memoria
 Per capire meglio il problema si consideri un intero a 32 bit scritto in una
 locazione di memoria posta ad un certo indirizzo. Come illustrato in
 fig.~\ref{fig:sock_endianess} i singoli bit possono essere disposti un memoria
@@ -761,14 +769,6 @@ dato che si trova per prima la parte pi
 parte dal bit meno significativo è detto per lo stesso motivo \textit{little
   endian}.
 
 parte dal bit meno significativo è detto per lo stesso motivo \textit{little
   endian}.
 
-\begin{figure}[htb]
-  \centering
-  \includegraphics[height=3cm]{img/endianess}
-  \caption{Schema della disposizione dei dati in memoria a seconda della
-    \textit{endianess}.}
-  \label{fig:sock_endianess}
-\end{figure}
-
 Si può allora verificare quale tipo di \textit{endianess} usa il proprio
 computer con un programma elementare che si limita ad assegnare un valore ad
 una variabile per poi ristamparne il contenuto leggendolo un byte alla volta.
 Si può allora verificare quale tipo di \textit{endianess} usa il proprio
 computer con un programma elementare che si limita ad assegnare un valore ad
 una variabile per poi ristamparne il contenuto leggendolo un byte alla volta.
@@ -808,12 +808,6 @@ in Linux l'ordinamento 
 resta sempre lo stesso, anche quando il processore permetterebbe di eseguire
 questi cambiamenti.
 
 resta sempre lo stesso, anche quando il processore permetterebbe di eseguire
 questi cambiamenti.
 
-Per controllare quale tipo di ordinamento si ha sul proprio computer si è
-scritta una piccola funzione di controllo, il cui codice è riportato
-fig.~\ref{fig:sock_endian_code}, che restituisce un valore nullo (falso) se
-l'architettura è \textit{big endian} ed uno non nullo (vero) se l'architettura
-è \textit{little endian}.
-
 \begin{figure}[htb]
   \footnotesize \centering
   \begin{minipage}[c]{15cm}
 \begin{figure}[htb]
   \footnotesize \centering
   \begin{minipage}[c]{15cm}
@@ -825,6 +819,12 @@ l'architettura 
   \label{fig:sock_endian_code}
 \end{figure}
 
   \label{fig:sock_endian_code}
 \end{figure}
 
+Per controllare quale tipo di ordinamento si ha sul proprio computer si è
+scritta una piccola funzione di controllo, il cui codice è riportato
+fig.~\ref{fig:sock_endian_code}, che restituisce un valore nullo (falso) se
+l'architettura è \textit{big endian} ed uno non nullo (vero) se l'architettura
+è \textit{little endian}.
+
 Come si vede la funzione è molto semplice, e si limita, una volta assegnato
 (\texttt{\small 9}) un valore di test pari a \texttt{0xABCD} ad una variabile
 di tipo \ctyp{short} (cioè a 16 bit), a ricostruirne una copia byte a byte.
 Come si vede la funzione è molto semplice, e si limita, una volta assegnato
 (\texttt{\small 9}) un valore di test pari a \texttt{0xABCD} ad una variabile
 di tipo \ctyp{short} (cioè a 16 bit), a ricostruirne una copia byte a byte.