done bonus question 1

This commit is contained in:
Tommaso Rodolfo Masera 2018-12-14 15:34:28 +01:00
parent a23d00a981
commit 8a6cc6a3cf
4 changed files with 280 additions and 0 deletions

Binary file not shown.

BIN
Homework 11/bonus.pdf Normal file

Binary file not shown.

280
Homework 11/bonus.tex Normal file
View File

@ -0,0 +1,280 @@
\documentclass[12pt]{article}
\title{Computer Architecture -- Assignment 11 Bonus}
\author{Claudio Maggioni \and Tommaso Rodolfo Masera}
\date{}
\begin{document}
\maketitle
\section{Bonus Question 1}
\subsection{Decimal to Hexadecimal}
\textbf{All the numbers are going to be first converted to binary and then to
hexadecimal for an easier calculation}
\begin{itemize}
\item[a)] \textbf{\large 11};
First we find how 11 is expressed in binary which is 1011 and then we convert it to
scientific base 2 notation: $1011 = 1.\textbf{011 } \times 2^3$.
The sign bit is 0 since $11>0$ and therefore the number is positive.
To determine the exponent we take the single precision bias (127) and we add to it
the amount of times we moved a bit past the floating point: $127 + 3 = 130$.
We then convert 130 to decimal by successive halving:\\
\begin{tabular}[h]{l|c}
\textbf{Fraction} & \textbf{Rest}\\
\hline \\
$130/2 = 65$ & 0 \\\\
$65/2 = 32$ & 1 \\
$32/2 = 16$ & 0 \\
$16/2= 8$ & 0 \\
$8/2 = 4$ & 0 \\
$4/2 = 2$ & 0 \\
$2/2 = 1$ & 0 \\
$1/2 = 0$ & 1 \\
\end{tabular}
By reading from most significant bit to least significant bit we get 10000010 for our
exponent.
We then finally assemble the floating point binary number with the parts we have
converted:
$0\ 10000010\ 01100000000000000000000 = 01000001001100000000000000000000$
And we convert to hexadecimal by splitting the number in 4 bit groups and converting
each group to its equivalent hexadecimal digit:
$0100\ 0001\ 0011\ 0000\ 0000\ 0000\ 0000\ 0000 = 4\ 1\ 3\ 0\ 0\ 0\ 0\ 0\ = 41300000$. \\\\
\textbf{From now on the passages are going to include only the calculations to avoid verbosity. Nonetheless, the same reasoning will be applied for each conversion.}
\item[b)] \textbf{\large 5/64};
Sign bit = 0
$\frac{5}{64} = 0.078125$
Conversion to binary:\\
\begin{itemize}
\item $0.078125 \times 2 = \textbf{0} + 0.15625$;
\item $0.15625 \times 2 = \textbf{0} + 0.3125$;
\item $0.3125 \times 2 = \textbf{0} + 0.625$;
\item $0.625 \times 2 = \textbf{1} + 0.25$;
\item $0.25 \times 2 = \textbf{0} + 0.5$;
\item $0.5 \times 2 = \textbf{1} + 0$;
\end{itemize}
Result of conversion: $0.000101$.
Normalization to scientific notation: $1.\textbf{01} \times 2^{-4}$.
Exponent bits in decimal = $127 - 4 = 123$
Conversion of exponent:\\
\begin{tabular}[h]{l|c}
\textbf{Fraction} & \textbf{Rest}\\
\hline \\
$123/2 = 61$ & 1 \\\\
$61/2 = 30$ & 1 \\
$30/2 = 15$ & 0 \\
$15/2= 7$ & 1 \\
$7/2 = 3$ & 1 \\
$3/2 = 1$ & 1 \\
$1/2 = 0$ & 1 \\
\end{tabular}
Exponent bits in binary = $01111011$
Final binary number = $0\ 01111011\ 01000000000000000000000 =$
$00111101101000000000000000000000$
Conversion to hexadecimal:
$0011\ 1101\ 1010\ 0000\ 0000\ 0000\ 0000\ 0000 = 3$ D A $0\ 0\ 0\ 0\ 0 = 3$DA$00000$.
\item[c)] \textbf{\large -5/64};
With this being the negative counterpart of the previous number we just need to flip
the sign bit of $\frac{5}{64}$.
With that we get: $10111101101000000000000000000000$.
Which, converted to hexadecimal, gives:
$1011\ 1101\ 1010\ 0000\ 0000\ 0000\ 0000\ 0000 =$ B D A $0\ 0\ 0\ 0\ 0 =$ BDA$00000$.
\item[d)] \textbf{\large 6.125};
Sign bit = 0
Conversion to binary:
Integer part = $6_{10} = 110_{2}$
Fractional part = $0.125_{10}$:
\begin{itemize}
\item $0.125 \times 2 = \textbf{0} + 0.25$;
\item $0.25 \times 2 = \textbf{0} + 0.5$;
\item $0.5 \times 2 = \textbf{1} + 0$;
\end{itemize}
= $001_2$.
Normalized binary = $110.001 = 1.\textbf{10001} \times 2^2$
Exponent bits in decimal = $127 + 2 = 129$.
\begin{tabular}[h]{l|c}
\textbf{Fraction} & \textbf{Rest}\\
\hline \\
$129/2 = 64$ & 1 \\\\
$64/2 = 32$ & 0 \\
$32/2 = 16$ & 0 \\
$16/2= 8$ & 0 \\
$8/2 = 4$ & 0 \\
$4/2 = 2$ & 0 \\
$2/2 = 1$ & 0 \\
$1/2 = 0$ & 1 \\
\end{tabular}
Exponent bits in binary = $10000001$
Final binary number = $0\ 10000001\ 10001000000000000000000 =$
$01000000110001000000000000000000$.
Conversion to hexadecimal:
$0100\ 0000\ 1100\ 0100\ 0000\ 0000\ 0000\ 0000 = 4\ 0$ C $4\ 0\ 0\ 0\ 0 = 40$C$40000$.
\end{itemize}
\subsection{Hexadecimal to Decimal}
\textbf{All the numbers are going to be first converted to binary and then to
decimal for an easier calculation}
\begin{itemize}
\item[a)] \textbf{\large 42E48000$_{16}$}
Conversion to binary:
$42$E$48000 = 0100\ 0010\ 1110\ 0100\ 1000\ 0000\ 0000\ 0000 =$
$ 0\ 10000101\ 11001001000000000000000 = $
$ 01000010111001001000000000000000$
From this we can observe that the sign bit is 0 (i.e. positive).
Conversion of exponent from binary to decimal:
$10000101 = 2^7 + 2^2 + 2^0 = 128 + 4 + 1 = 133$
To find how many bits have been moved beyond the floating point we now find the
exponent for our notation:
$ 133 - 127 = 6$
And we then take the mantissa to multiply it by $2^6$ (where 6 is the number we found through the last passage) to get the final binary number to convert to decimal:
$1.11001001000000000000000 \times 2^6 = 1.11001001 \times 2^6 = 1110010.01$
Conversion to decimal:
$1110010.01 = 2^6 + 2^5 + 2^4 + 2 + 2^{-2} = 64 + 32 + 16 + 2 + 0.25 = 114.25$
\item[b)] \textbf{\large 3F880000$_{16}$}
Conversion to binary:
$3$F$880000 = 0011\ 1111\ 1000\ 1000\ 0000\ 0000\ 0000\ 0000\ =$
$0\ 01111111\ 00010000000000000000000 =$
$00111111100010000000000000000000$
Sign bit = 0
Conversion of exponent from binary to decimal:
$01111111 = 2^6 + 2^5 + 2^4 + 2^3 + 2^2 + 2 + 1 = 64 + 32 + 16 + 8 + 4 + 2 + 1 = 127$
Power of 2 = $127 - 127 = 0$
Final binary number:
$1.0001 \times 2^0 = 1.0001$
Conversion to decimal:
$1.0001 = 2^0 + 2^{-4} = 1 + 0.0625 = 1.0625$
\item[c)] \textbf{\large 00800000$_{16}$}
Conversion to binary:
$00800000 = 0000\ 0000\ 1000\ 0000\ 0000\ 0000\ 0000\ 0000 =$
$0\ 00000001\ 000\ 00000000000000000000 =$
$00000000100000000000000000000000$
Sign bit = 0
Conversion of exponent from binary to decimal:
$00000001 = 2^0 = 1$
Power of 2 = $1 - 127 = -126$
Final binary number:
$1.00000000000000000000 \times 2^{-126}$
Conversion to decimal:
$1.00000000000000000000 \times 2^{-126} = 2^{-126} = 1.1754944 \times 10^{-38}$
\item[d)] \textbf{\large C7F00000$_{16}$}
Conversion to binary:
C$7$F$00000 = 1100\ 0111\ 1111\ 0000\ 0000\ 0000\ 0000\ 0000 =$
$1\ 10001111\ 11100000000000000000000 =$
$11000111111100000000000000000000$
Sign bit = 1
Conversion of exponent from binary to decimal:
$10001111 = 2^7 + 2^3 + 2^2 + 2^1 + 2^0 = 128 + 8 + 4 + 2 + 1 = 143$
Power of 2 = $143 - 127 = 16$
Final binary number:
$1.11100000000000000000000 \times 2^{16} = 1.111 \times 2^16 =$
$11110000000000000.0$
Conversion to decimal:
$11110000000000000.0 = 2^16 + 2^15 + 2^14 + 2^13 = 65536 + 32768 + 16384 +
8192 = 122880 $ and, since the sign bit is 1 (i.e. negative), $= -122880$.
\end{itemize}
\section{Bonus Question 2}
\end{document}

Binary file not shown.