\documentclass[loesungsseite]{schuleab}
\usepackage[utf8]{inputenc}
\usepackage{schulinf}

% Dieses Dokument ist in der Zusammenarbeit von Informatikreferendaren und
% ehemaligen Informatikreferendaren der Studienseminare (heute ZfsL) Arnsberg,
% Hamm und Solingen entstanden.
%
% Das Dokument steht unter der Lizenz: Creative Commons by-nc-sa Version 4.0
% http://creativecommons.org/licenses/by-nc-sa/4.0/deed.de
%
% Nach dieser Lizenz darf das Dokument beliebig kopiert und bearbeitet werden,
% sofern das Folgeprodukt wiederum unter gleichen Lizenzbedingungen vertrieben
% und auf die ursprünglichen Urheber verwiesen wird.
% Eine kommerzielle Nutzung ist ausdrücklich ausgeschlossen.
%
% Die Namensnennung durch einen Verweis und die Lizenzangabe der ursprünglichen
% Urheber auf den Materialien für Schülerinnen und Schüler ist erforderlich.
%
% Die Sammlung der Dokumente steht unter
% http://ddi.uni-wuppertal.de/material/materialsammlung/
% zur Verfügung.
%
% Das LaTeX-Paket zum Setzen der Dokumente der Sammlung steht
% unter  http://www.ctan.org/pkg/schule
% zur Verfügung.

\usepackage[pdfauthor={Referendare der Informatikfachseminare Arnsberg, Hamm und Solingen}]{hyperref}
\includexmp{lizenz}
\cclizenz{byncsaeu}
\footerQRLink{materialsammlung_qr_url.pdf}

\svnid{$Id: ab_04_hexadezimal.tex 626 2014-05-22 21:36:50Z pieper $}

\dokName{Hexadezimale Zahlen}
\jahrgang{9}

\begin{document}
\section*{Hexadezimale Zahlen}

In vielen Bereichen des Computers wird mit 8, 16 oder mehr Bit gearbeitet. Damit werden dann unter anderem auch Speicherbereiche adressiert oder Befehle codiert. Mit 8 Bit, was einem Byte entspricht, hat man \(2^8 = 256\) Möglichkeiten. Um diese einheitlich mit immer gleicher Anzahl Zeichen darzustellen, wird das hexadezimale System genutzt.

Beim hexadezimalen System wird als Basis die 16 genutzt. Bei dem uns geläufigen dezimalen System ist 10 die Basis und beim binären System ist dieses die 2. Da \(16^2 = 256\) ist, werden für die Darstellungen immer nur zwei Zeichen anstatt der 8 Zeichen in binärer Darstellung benötigt.

Um die Ziffern oberhalb der 9 darzustellen, wird auf die ersten Buchstaben des Alphabets zurückgegriffen. A steht dabei für 10, B für 11 und F für 15. Umgerechnet in das Dezimalsystem wird in ähnlicher Weise wie beim Binärsystem: Aus der Zahl 0x8B wird \( 8\cdot 16^1 + 11 \cdot 16^0 = 8 \cdot 16 + 11 \cdot 1 = 128 + 11 = 139_{10} \).

Zur besseren Unterscheidung von Dezimalzahlen wird bei hexadezimalen Zahlen, wie im obigen Beispiel, ein 0x davor gesetzt. Dadurch wird verdeutlicht, dass z.\,B. mit 0x56 nicht die uns bekannte 56 gemeint ist. Diese Schreibweise wird unter anderem in Python verwendet. Ein h hinten anzufügen ist eine weitere, ebenso verbreitete Möglichkeit, hexadezimale Zahlen kenntlich zu machen. So gilt \(0x56 = 56h = 86_{10}\).

\minisec{Aufgaben}
\begin{smallenumerate}
	\item Rechne folgende Hexadezimalzahlen in Dezimalzahlen um:
		\[ 0xFF \qquad 0x7E \qquad 0xAFC3 \qquad 0x42B1 \qquad 0x1111 \qquad 0x92EE \qquad 0xD6C3 \]
	\item Suche eine Möglichkeit, wie man Dezimalzahlen in Hexadezimalzahlen umrechnen kann. Schreibe dieses System auf und wende dieses auf folgende Zahlen an: 
		\[ 114_{10} \qquad 687_{10} \qquad 3683_{10} \qquad 156200_{10} \qquad 256 _{10} \qquad 127_{10} \qquad 129_{10}  \]
\end{smallenumerate}

\loesung{
	\begin{smallenumerate}
		\item 255 \quad 126 \quad 44995 \quad 17073 \quad 4369 \quad 37614 \quad 54979
		\item 0x72 \quad 0x2AF \quad 0xE63 \quad 0x26228 \quad 0x100 \quad 0x7F \quad 0x81
	\end{smallenumerate}
}

\end{document}