
Transcription
Mit Daten jonglierenZyklus 2LP21: Informatik – DatenstrukturenVersion 09/2020
ImpressumImpressumVersionSeptember 2020ModulverantwortungWaldvogel Bettina, Pädagogische Hochschule Schaffhausen Kooperationspartner MIA21Die Materialien dürfen von Lehrpersonen und Fachpersonen zur eigenen Information und persönlichenNutzung verwendet werden.Im Zentrum von MIA21 steht die Zusammenarbeit und das gemeinsame Weiterentwickeln. Aus diesemGrund freuen wir uns über kritische Rückmeldungen und Hinweise auf Rechtschreibfehler genauso wieüber freundliches Lob. Am besten funktioniert das über unser kmeldung MIA21, Mit Daten jonglieren – Version 09/20202
InhaltsverzeichnisInhaltsverzeichnisImpressum . 2Inhaltsverzeichnis. 3Modulziele . 4Vorgehen . 5Lernphase A: Einführung . 61234Darum geht’s . 6Einleitung ins Thema . 6Kompetenzen der Schülerinnen und Schüler gemäss Lehrplan 21 . 6Unterrichtsbezogene Annäherung an das Thema . 8Lernphase B: Vertiefung . 101 Darum geht’s . 102 Fachwissenschaftlicher Hintergrund . 102.1 Wissenswertes zum Codieren von Daten . 112.2 Wissenswertes zu Dateiformaten (auch: Dokumenttyp oder Dateityp) . 192.3 Wissenswertes zu Baum- und Netzstrukturen . 233 Fachdidaktischer Hintergrund . 244 Unterrichtsbeispiel: Wetterbeobachtung . 324.1 Schritt 1: Daten sammeln und strukturieren. 324.2 Schritt 2: Daten darstellen . 334.3 Schritt 3: Daten auswerten und hinterfragen . 335 Praxisnahe Literatur mit Beispielen . 35Lernphase C: Umsetzung . 371 Darum geht’s . 372 Vorgehen bei der Aufgabenbearbeitung . 373 Aufgaben . 383.1 Aufgabe A 1: Computer Science Unplugged. 383.2 Aufgabe A 2: Daten sammeln, strukturieren, darstellen und auswerten . 393.3 Aufgabe A3: Selbst definierte Aufgabe . 404 Unterrichtsbeispiele . 41Lernphase D: Abschluss und Reflexion . 421 Darum geht’s . 422 Persönliche Reflexion . 42Hintergrundwissen und weitere Literatur. 43Literaturverzeichnis. 451 Abbildungsverzeichnis. 452 Tabellenverzeichnis . 46 MIA21, Mit Daten jonglieren – Version 09/20203
ModulzieleModulzieleNach der Bearbeitung des Moduls "Mit Daten jonglieren – Zyklus 2" kennen Sie das diesem Modul zu Grunde liegende Kompetenzprofil aus dem Lehrplan 21. kennen Sie Möglichkeiten, wie die Teilkompetenzen aus dem Lehrplan21 im Unterricht integriertwerden können kennen Sie die Unterschiede zwischen digitalen und analogen Daten. kennen Sie verschiedene Datenformate für digitale Text-, Bild-, Audio- und Videodaten. können Sie Daten strukturiert ablegen und wiederfinden. kennen Sie Baum- und Netzwerkstrukturen zum Ordnen von Daten und Dateien. können Sie Daten auf verschiedene Arten codieren und verschlüsseln können Sie vorhandene Aufgaben anwenden und eigene Aufgaben daraus weiterentwickeln. wissen Sie, wie Sie die Schülerinnen und Schüler in das Thema Datenstrukturen einführen können. MIA21, Mit Daten jonglieren – Version 09/20204
VorgehenVorgehenLernphaseInhalteNachweiseLernphase A: EinführungKompetenzprofilZeitplanErste inhaltliche ÜbungStandortbestimmungNotizen zur ÜbungLernphase B: VertiefungFachwissenschaftlicher undfachdidaktischer HintergrundSichtung weiterführender Links undLiteraturLernphase C: UmsetzungMIA21-Aufgabe A21-UnterrichtsszenarioLernphase D: Abschlussund ReflexionAbschliessende ReflexionErgänzungder SelbsteinschätzungHinweise zum Vorgehen:Halten Sie alle weiterführenden Notizen wie Selbsteinschätzung, Notizen oder Reflexion gemäss Absprache mit Ihrer Mentorin/Ihrem Mentor schriftlich fest. MIA21, Mit Daten jonglieren – Version 09/20205
Lernphase A: EinführungLernphase A: Einführung12Darum geht’s Sie kennen das Kompetenzprofil des Lehrplan 21 zu diesem Modul und haben darauf basierendIhren persönlichen Lernstand eingeschätzt. Sie kennen zur Thematik passende Lehrmittel und Unterrichtsideen dazu. Sie nutzen erste Aufgaben, um sich mit dem Thema und digitalen Werkzeugen vertraut zu machen. Sie haben die Lerngruppe für einen Erfahrungsaustausch genutzt und sich auf die Form der Zusammenarbeit im MIA21-Modul geeinigt sowie einen Zeitplan festgelegt.Einleitung ins ThemaUnser Alltag ist von digitalen Daten bestimmt – Texte, Bilder, Fotos, Videos, Audioaufzeichnungen. Wiekönnen wir diesen Daten auf die Spur kommen? Wie sind sie codiert? In diesem Modul werden die verschiedenen Arten von digitalen Daten auf spielerische Art und Weise erkundet, so wie es auch im Unterricht mit Schülerinnen und Schülern gemacht werden kann. Anhand des Beispiels von Wetterdaten wirdexemplarisch gezeigt, wie in der Klasse eigene Daten gesammelt, geordnet, in Tabellenform dargestellt,visualisiert und interpretiert werden können.Algorithmen und Datenstrukturen bilden den Kern der Informatik. Sie sind eng miteinander verwoben.Wenn ich zum Beispiel das grösste Element in einem chaotischen Haufen, also einer Datensammlungohne jegliche Struktur, suchen muss, bleibt nichts anderes übrig, als den ganzen Haufen zu durchsuchen.Wenn ich aber das grösste Element aus einer sortierten Liste suche, muss ich lediglich abklären an welchem Ende der Liste das grösste Element zu finden ist, d.h. ob die Liste auf- oder absteigend sortiert ist.Algorithmen und Datenstrukturen müssen aufeinander abgestimmt sein.3Kompetenzen der Schülerinnen und Schüler gemäss Lehrplan 21Die Auswahl der Themen in diesem Modul entspricht dem Lehrplan 21. Aufgaben und Beispiele wurdenso gewählt, dass für die Schülerinnen und Schüler ein kontinuierlicher Aufbau von Informatikkompetenzen möglich wird. Der Aufbau erfolgt über die Klärung, was Daten sind und wie diese codiert werden. Jestrukturierter und geordneter die Daten aufbereitet sind, desto mehr bzw. einfacher können Informationen daraus gewonnen werden. MIA21, Mit Daten jonglieren – Version 09/20206
Lernphase A: EinführungIm Lehrplan 21 werden im Kompetenzbereich Informatik drei Teilkompetenzen unterschieden: Datenstrukturen (Daten ordnen, strukturieren, darstellen), Algorithmen (Probleme schrittweise lösen) und Informatiksysteme (digitale Geräte und Netzwerke). Die einzelnen Teilkompetenzen sind nicht trennscharf,vielmehr braucht es für jede Tätigkeit in der Informatik alle drei Teile, die elektronischen Geräte, dieAlgorithmen und die Daten, vorliegend in speziellen Datenstrukturen.Gemäss Lehrplan 21 bildet der Umgang mit Datenstrukturen eine zentrale Kompetenz, welche bereits abdem 1. Zyklus systematisch aufgebaut wird. Einige Teilkompetenzen, welche im Übergangsbereich zwischen 2. und 3. Zyklus angesiedelt sind, werden in beiden MIA21-Modulen behandelt: „Mit Daten jonglieren – Zyklus 2“ und „Die Datenflut bändigen – Zyklus 3“. An den entsprechenden Stellen sind Querverweise angebracht.Abbildung 1 Ausschnitt Lehrplan 21, Datenstrukturen MIA21, Mit Daten jonglieren – Version 09/20207
Lernphase A: Einführung4 Schätzen Sie Ihren Lernstand aufgrund der Kompetenzen des Lehrplan21 ein und tauschen Siesich in Ihrer Lerngruppe aus. Dokumentieren Sie gemäss Absprache mit Ihrer Mentorin/Ihrem Mentor Ihre Selbsteinschätzung und formulieren Sie Ihr Ziel für die Auseinandersetzung mit dem vorliegenden Modul.Unterrichtsbezogene Annäherung an das ThemaTäglich verwenden wir Sprache, schriftliche Texte, Symbole oder Icons ohne uns Gedanken darüber zumachen, was genau dahintersteckt. Was sagen uns die Verkehrsschilder, Musiknoten und Buchstaben?Das alles sind Codes, die eine Botschaft enthalten. Wenn wir die Botschaft herausfinden wollen, müssenwir den Code decodieren.Aktivität: Finden Sie verschiedene Codes in Ihrem Umfeld, notieren bzw. skizzieren und decodierenSie diese.Beispiel: Wenn man das Emoji decodiert, bedeutet es in etwa «ich bin fröhlich», «das finde ich gut», «dasmag ich». Für (fast) jedes Emoji gibt es mehrere Nuancen von Interpretationen. Der Versuch, eine komplexe Botschaft nur mit Emoji auszudrücken, zeigt schnell die Grenzen des Emoji-Codes. Missverständnisse sind vorprogrammiert. Eine Hilfe bietet übrigens die Website smileybedeutung.com.Abbildung 2 Lachendes Emoji.Codes im Alltag können „unscharfe“ Bedeutungen haben. Viele Codes sind aber eindeutig. Eine Musiknote gibt die Tonhöhe exakt an. Sie kann aber verschieden interpretiert werden, z.B. beim Klavierspielmit einem harten oder weichen Anschlag. Verkehrsschilder sind ein anderes Beispiel für einen eindeutigen Code mit klaren Regeln.Aktivität: Fremde Schriften veranschaulichen Codes sehr schön. Man kann z.B. das griechische oderkyrillische Alphabet zum Codieren von „geheimen“ Botschaften verwenden.Den Schülerinnen und Schülern sind oft auch fiktive Schriften aus der Kinder- und Jugendliteratur bekannt. Beispiele sind Sindarin und Quenya, die Sprache der Elfen in den Büchern von J. R. R. Tolkien.Aktivität: Die römischen Zahlen sind Codes. Um welches Jahr handelt es sich?Die römischen Zahlen sind ein Beispiel für historische Codes, allerdings bei weitem nicht der älteste.Schon Höhlenzeichnungen haben Botschaften vermittelt und sind als Codes zu verstehen. MIA21, Mit Daten jonglieren – Version 09/20208
Lernphase A: EinführungAbbildung 3 Römische Zahl auf einem GrabsteinDer Code der römischen Zahlen ist relativ einfach zu erlernen. Sobald man aber versucht, einfachste Rechenoperationen, wie z.B. die schriftliche Addition, auszuführen, wird klar, dass sich dieser Code nichtfür die Mathematik eignet.Digitale Geräte sollten einen Code verwenden, der sich gut zum Rechnen eignet. Im Binärsystem gibt esnur die Ziffern 0 und 1. Addition und Multiplikation sind im Binärsystem besonders einfach:Tabelle 1: Addition und Multiplikation im Binärsystem 01*010010001110101Aktivität: Vergleichen Sie die Additions- und Multiplikationstafeln im Dezimalsystem mit jenen im Binärsystem (Tabelle 1). Welche Nachteile bringt das Binärsystem mit sich? Warum sind im digitalenZeitalter nicht alle Zahlen im Binärsystem? Warum sind Binärzahlen z. B. für die Preise im Supermarktoder für Hausnummern unpraktisch?In der Informatik werden sehr viele Codes verwendet. Texte, Bilder, Audio- und Videodaten werden alsZahlen codiert, und zwar mit nur zwei Ziffern: 0 und 1.Jede Art von Daten, z.B. Textdaten, Bilddaten, Audiodaten haben ihre eigenen Datenformate. Die Endungen der Dateinamen geben Auskunft darüber, welche Art von Daten sich in der Datei verbergen. EineDatei mit der Endung *.jpg ist z. B. ein Bild. MIA21, Mit Daten jonglieren – Version 09/20209
Lernphase B: VertiefungLernphase B: Vertiefung12Darum geht’s Sie sind vertraut mit den theoretischen Grundlagen im Bereich Daten codieren, strukturieren,darstellen und auswerten. Sie kennen didaktische Grundlagen zur Vermittlung des Themas Datenstrukturen, insbesondereden fachdidaktischen Hintergrund des Dagstuhl-Dreiecks. Sie verfügen über eine Sammlung von Ideen, weiterführenden Informationen, Materialien undLinks, um sich je nach Interesse vertiefen zu können. Sie nutzen die einleitenden Aktivitäten und das abschliessende Beispiel, um sich erste Gedanken zum Umgang mit Daten zu machen. Sie erkennen mögliche Stolpersteine bei der Interpretation von Daten.Fachwissenschaftlicher Hintergrund„Wer sich nicht in der Belanglosigkeit des Internets verlieren will, muss sich [ ] bewusst sein, dass derZugang und Besitz von Informationen nicht mit Wissen und Erkenntnis gleichzusetzen ist. “ (Hartmann& Hundertpfund, 2015, S. 15)Aus Daten können Informationen gewonnen werden, welche wiederum zu neuen Erkenntnissen führenkönnen. Die Art und Weise, wie die Daten geordnet, strukturiert und weiterbearbeitet werden, habeneinen grossen Einfluss darauf, ob daraus neue Erkenntnisse gewonnen werden können oder einfach nurein weiterer grosser „Datenfriedhof“ entstanden ist.Da im Lehrplan 21 drei sehr unterschiedliche Informatik-Themen rund um die Datenstrukturen im Zyklus2 behandelt werden, sind die theoretischen Grundlagen in drei Teilen verfasst: „Wissenswertes zum Codieren von Daten“, „Wissenswertes zu Dateitypen“ und „Wissenswertes zu Baum- und Netzwerkstrukturen“. Die Teile können unabhängig voneinander gelesen werden. MIA21, Mit Daten jonglieren – Version 09/202010
Lernphase B: Vertiefung2.1Wissenswertes zum Codieren von DatenDigitale Geräte arbeiten mit digitalen Daten. Nicht nur Buchstaben und Zahlen, sondern auch Bilder undTöne werden als digitale Daten in 0 und 1 codiert.2.1.1Analoge und digitale DatenAlles, was in digitalen Geräten gespeichert und verarbeitet wird, kann unter dem Begriff „Daten“ zusammengefasst werden. Daten gibt es aber auch jenseits digitaler Geräte, z.B. analog erfasste Messdatenund handschriftliche Aufzeichnungen. Daten können verschiedene Inhalte haben, z.B. Texte, Fotos, Videos, Musikaufzeichnungen, Zahlen.Erkenntnisse können nur aus Daten gewonnen werden, wenn die Daten sinnvoll geordnet, strukturiertund interpretiert werden. Will man z.B. beobachten und messen, wie schnell eine Feuerbohne wächst,so muss man Regeln für das Sammeln der Daten aufstellen: Die Grösse der Pflanze wird täglich gemessen.Die Pflanze wird ohne Topf gemessen. Die Grösse der Pflanze wird in Zentimeter gemessen.Digitale Daten können Texte, Ton und Video-Dokumente sein, aber auch Computerprogramme selber,welche in maschinenlesbarer Form gespeichert sind. Alle anderen Daten, z.B. von Hand geschriebeneTexte, Karten auf Papier werden als analoge Daten bezeichnet. Aus analogen Daten können durch Digitalisierung (z.B. scannen) digitale Daten erzeugt werden.Beispiel: Ein aus Ton getöpferter Gegenstand wird mit einem 3D-Scanner digitalisiert. Die digitalen Scanner-Datenwerden am Computer nachbearbeitet und auf einem 3DDrucker ausgedruckt. Aus einem realen, dreidimensionalenGegenstand wurden digitale Daten gemacht, welche anschliessend wieder in einen realen, dreidimensionalen Gegenstand überführt wurden.Abbildung 4: Die Tonfigur (links) wurde gescanntund mit einem 3D-Drucker ausgedruckt (rechts).Quelle: Arbeiten der Primarschule Zumikon.Der Weg von analogen Objekten zu digitalen Daten und zurück zu analogen Objekten ist aber nicht nureine Spielerei. Künstliche Gelenke können auf diese Weise hergestellt werden: Echte Gelenke dienten alsVorbild. Diese werden digitalisiert und verarbeitet. Aus dem digitalen Produkt wird nun ein künstlichesGelenk gefertigt.Wie im Beispiel mit den gescannten und gedruckten Tonfiguren deutlich zu erkennen ist, geht beim Scannen immer Information bzw. Genauigkeit verloren. Umwandlungen von analog zu digital sind nie verlustfrei. Wenn wir mit Daten arbeiten, ist es deshalb wichtig zu wissen, ob man analoge oder digitale Datenvorliegen hat. MIA21, Mit Daten jonglieren – Version 09/202011
Lernphase B: Vertiefung2.1.2Codes im AlltagEin Code kann eine Abbildungsvorschrift (bzw. Regel) sein, die jedem Zeichen ein anderes Zeichen (bzw.eine Zahl) zuordnet. Wird die Definition weiter gefasst, so sind z.B. auch Farbcodierungen in der Naturals Codes zu verstehen: Die hellgrünen Blätter eines Laubbaumes codieren „Frühling“, dunkelgrüne Blätter „Sommer“ und rötlich-gelbe Blätter stehen für „Herbst“.Die Begriffe Codierung und Verschlüsselung werden oft verwechselt. Es wird zwischen offenen Codes (beidenen die Abbildungsvorschrift bzw. die Bedeutung bekannt ist) und geheimen Codes unterschieden.Letzteres wird auch als Verschlüsselung bezeichnet. Codierung wird die Umwandlung in ein anderes Format genannt, wenn die Umwandlungsvorschrift (der sogenannte Schlüssel) bekannt ist. Der Begriff Verschlüsselung wird verwendet, wenn der Schlüssel geheim ist (Computer Lexikon, 2001, S.153 und S.745).Codes findet man im Alltag überall: Symbole, Piktogramme, aber auch Musiknoten, Abkürzungen, Emojisund Emoticons, gesprayte Zeichen und Markierungen. Aber auch die Gebärdensprache, die Brailleschriftund der Morsecode sind Beispiele von Codes ausserhalb der «Computer-Welt».Ein Code kann einzelne Buchstaben oder Sätze bzw. Satzteile codieren. Ein Beispiel ist das Symbol fürden Satzteil „Gefällt mir.“Da digitale Geräte nur 0 und 1 „verstehen“, müssen Zahlen, Buchstaben und Sonderzeichen mit Hilfe vonCodes übersetzt werden. Buchstaben werden mit Hilfe von Code-Tabellen, z.B. dem ASCII-Code übersetzt. Ein ausführliches Beispiel befindet sich weiter unten.2.1.3Zahlen digital: BinärcodeDigitale Geräte rechnen mit 0 und 1. Damit auch mit grösseren Zahlen gearbeitet werden kann, muss einWeg gefunden werden, möglichst alle Zahlen mit 0 und 1 zu codieren. Die Lösung nennt sich Binärcode.Anstelle des für uns üblichen Dezimalsystems (auf 10-er Basis) wird das Binärsystem auf 2-er Basis verwendet, d.h. wir kommen mit den beiden Ziffern 0 und 1 aus.Die binäre Ziffernfolge 1001 wird interpretiert als 1*8 0*4 0*2 1*1. Die binäre Ziffernfolge 1001 stelltalso den dezimalen Wert 9 dar. Die binäre Ziffernfolge 1011 wird interpretiert als 1*8 0*4 1*2 1*1. Diebinäre Ziffernfolge 1011 stellt den dezimalen Wert 11 dar. Rationale und reelle Zahlen werden im Computer als Gleitkommazahlen mit endlicher Genauigkeit angenähert. Ein Drittel (Division ⅓) kann zum Beispiel nicht exakt dargestellt werden. Sobald man eine endliche Anzahl Kommastellen verwendet, wirddie Zahl ungenau: mit einer Kommastelle 0.3, mit zwei Kommastellen 0.33 oder mit 12 Kommastellen0.333333333333. Dadurch, dass die Zahlen nicht ganz exakt dargestellt werden können und bei gewissenRechenoperationen sich diese Ungenauigkeit vervielfachen kann, spielt die Fehlerrechnung in der Informatik eine wichtige Rolle. Je nachdem, welchen Datentyp man für eine Zahl verwendet, können mehroder weniger grosse Zahlen, positive oder negative, nur Ganzzahlen oder Gleitkommazahlen gespeichertwerden. MIA21, Mit Daten jonglieren – Version 09/202012
Lernphase B: VertiefungAbbildung 5: Binärcode und Dezimal-Code: Die Dezimalzahl 11 wird mit den Lampen im Binärcodedargestellt.Tabelle 2: Typische DatentypenDatentypGrösse in BitsWertebereichWahrheitswert (engl. boolean)1 bitwahr / falsch (true/false)Kleine Ganzzahl (engl. short)16 bit 2 Byte-32768 bis 32767Ganzzahl (engl. integer)32 bit 4 Byte-2 Mia. bis 2 Mia.Gleitkommazahl (engl. float)32 bit 4 Byte-3*1038 bis 3*1038Farbwert (engl. color)3* 8 bit 3 Byte2'777’216 Farben2.1.4Buchstaben digital: ASCII-CodeAuch Buchstaben werden mit 0 und 1 dargestellt. Wiederum wird das Binärsystem verwendet. Zusätzlichgibt es eine Konvention, die festlegt, welche Zahl für welchen Buchstaben steht. Der Buchstabe «A» wirdmit der Dezimalzahl 65 codiert. «B» wird mit der Dezimalzahl 66 codiert, usw. Kleinbuchstaben folgen ab97 für a. Dieser Code wird ASCII genannt (engl. American Standard Code for Information Interchange).Die Dezimalzahl 65 wiederum wird im Computer als Binärzahl 1000001 codiert. Eine standardisierte Tabelle legt fest, in welche Zahlen die Buchstaben und Sonderzeichen umgewandelt werden.Der Original-ASCII Code umfasst 128 Zeichen (von 0 bis 127). Umlaute und weitere Sonderzeichen wurden später in einem Zusatz von Code 128 bis 255 hinzugefügt. Das führt manchmal zu Problemen mitUmlauten und Sonderzeichen (z.B. in Passwörtern oder E-Mail-Adressen). MIA21, Mit Daten jonglieren – Version 09/202013
Lernphase B: VertiefungTabelle 3: Auszug aus einer ASCII-Tabelle. Der ASCII-Code von einigen Sonderzeichen und Buchstaben ist als Dezimalzahl und alsBinärzahl 9811000102.1.5Offene CodesDie Umwandlung von Zeichen in ASCII-Code wird als offener Code bezeichnet, da die ASCII-Tabellen freizugänglich sind. Man spricht von Codierung. Der umgekehrte Weg: vom Code zurück zur ursprünglichenBotschaft wird als Decodierung bezeichnet. Wie lautet der ASCII-Code (in Dezimalzahlen) für „Hallo“? Wie lautet der ASCII-Code für„HALLO“? Welche Botschaft ist im ASCII-Code 103 117 116 101 110 84 97 103 codiert? Welche Rolle spielen die Leerschläge (engl. space)? Wie würde man den Code1031171161011108497103 decodieren? Was ist problematisch? Könnte man das Problem ohneLeerschläge lösen? Der ASCII-Code wurde willkürlich von Menschen festgelegt. Er hätte genauso gut anders seinkönnen. Erfinden Sie einen eigenen Code, um Grossbuchstaben mit zweistelligen Dezimalzahlen darzustellen. Variante: Erfinden Sie einen eigenen Code, um Grossbuchstaben mit Symbolen oder Emoijs darzustellen. MIA21, Mit Daten jonglieren – Version 09/202014
Lernphase B: VertiefungTabelle 4: Beispiel für einen Code mit zweistelligen DezimalzahlenKlartext (Zeichen)Verschlüsselt mit ZahlA10B15C12D24E99F83usw.Die zweistelligen Dezimalzahlen können willkürlich verteilt werden. Sie müssen insbesondere nicht derReihe nach vergeben werden (was die Entschlüsselung vereinfachen würde). Wichtig ist lediglich, dassdie Zuordnung eines Buchstabens zu einer Zahl eindeutig ist.Einzelne Zeichen können auch mit Symbolen codiert werden.Tabelle 5: Beispiel für eine Codierung mit Symbolen.AVerschlüsselt mitSymbol B C D E F Klartext (Zeichen)usw.Die Folge von Symbolen steht für das Wort AFFE. Ein weiteres Beispiel für einen offenen Codeist der Morsecode.2.1.6Verschlüsselung und geheime CodesEine Verschlüsselung (auch Chiffrierung genannt) wandelt einen so genannten Klartext mit Hilfe einesSchlüssels in einen Geheimtext um.KlartextVerschlüsselungmit geheimemSchlüsselGeheimtextAbbildung 6: Verschlüsselung von Klartext zu Geheimtext MIA21, Mit Daten jonglieren – Version 09/202015
Lernphase B: VertiefungEiner der ältesten Geheimcodes ist der Caesar-Code, welcher angeblich von Julius Caesar verwendetwurde. Der geheime Schlüssel wird als Grossbuchstabe angegeben, wobei A für die Verschiebung umeinen Buchstaben steht, B für die Verschiebung um zwei Buchstaben, C für die Verschiebung um dreiBuchstaben, usw. Im Klartext werden der Einfachheit halber nur Grossbuchstaben verwendet.Wird z.B. der Schlüssel E verwendet (5. Buchstabe), dann wird jeder Buchstabe im Klartext um fünf Buchstaben verschoben. Aus A wird dann F.Klartext: „HALLO“, Schlüssel EMFQQT1.ABCDEFGHIJKLMNOPQRSTUVWXYZ2.Abbildung 7: Caesar-Verschlüsselung der ersten zwei Buchstaben des Wortes „HALLO“ mit dem Code E, d.h. mit einer Verschiebung um fünf Buchstaben. H wird zu M, A wird zu F, L wird zu Q und O wird zu T.Das Wort „HALLO“ wird mit dem Schlüssel E zu „MFQQT“. Der Caesar-Code ist mit etwas Fleiss relativeinfach zu knacken. Gerade bei längeren Texten, kann man sich die unterschiedlichen Häufigkeiten derBuchstaben zunutze machen, z.B. der häufigste Buchstabe in einem deutschsprachigen Text ist mit grosser Wahrscheinlichkeit ein e oder allenfalls ein n oder i.Im Internet oder in Chats genutzte Kürzel von Jugendlichen haben oft auch den Charakter von geheimenCodes: ROFL, LOL und ähnliche Abkürzungen sollen nicht von jedermann entschlüsselt werden können.Das Hauptproblem bei der Verschlüsselung liegt darin, dass zwar angenommen wird, dass die verschlüsselte Botschaft sicher ist, der Empfänger aber irgendwie in Besitz des Schlüssels kommen muss, um denGeheimtext entschlüsseln zu können.Codes, bei welchen der gleiche Schlüssel für die Verschlüsselung und die Entschlüsselung verwendetwird, heissen symmetrische Codes. Heutzutage werden oft asymmetrische Codes verwendet, bei welchen mit einem öffentlichen Schlüssel (public-key) ver- und mit einem geheimen Schlüssel entschlüsseltwerden. Asymmetrische Codes werden heutzutage zur Verschlüsselung von sicheren Webseiten (gekennzeichnet mit https://) verwendet. Gesicherte Webseiten findet man zum Beispiel beim Online-Geschäftsverkehr oder beim Zahlen mit Kreditkarte im Internet.Zur Verbesserung der Sicherheit werden manchmal gleich mehrere Verschlüsselungsverfahren kombiniert. MIA21, Mit Daten jonglieren – Version 09/202016
Lernphase B: Vertiefung2.1.7Grafische CodesCodes können auch grafisch dargestellt werden. Zwei weit verbreitete grafische Codes sind der Strichcode (engl. Barcode) und der QR-Code. Für beide Codes werden Lesegeräte bzw. Kameras und entsprechende Software verwendet.Abbildung 8: Strichcode eines in Deutschland registrierten Produktes.Der Strichcode ist auf Preisschildern im Supermarkt allgegenwärtig. Die Klartextzeile unterhalb des Strichcodes mit den für Menschen lesbaren Dezimalzahlen wird z.B. von den Kassierinnen im Supermarkt gebraucht, wenn der Strichcode für das Lesegerät unleserlich ist. Die drei ersten Ziffern bilden das Länderpräfix. Produkte, deren Strichcode mit Zahlen im Bereich 760 bis 769 beginnen werden der Schweiz bzw.dem Fürstentum Lichtenstein zugeordnet (was aber nicht unbedingt bedeutet, dass das Produkt in derSchweiz hergestellt wurde). Länderpräfixe im Bereich 400-440 werden Deutschland zugeordnet. Unterdem Stichwort „GS1-Länderpräfix “ findet man im Web die Präfixe für viele andere Länder. Im Unterrichtkönnten die Kinder zum Beispiel Strichcodes von ihrem Heimatland oder ihrem Ferienland suchen.Die folgenden Ziffern bezeichnen das Unternehmen, das Produkt und zum Schluss noch eine Prüfziffer.Im Unterricht könnten etwa Produkte gesucht werden, mit dem Schweizer Ländercode. Anschliessendkönnte man versuchen herauszufinden, ob man auch ein Unternehmen identifizieren kann, indem dieStrichcodes von Produkten des gleichen Unternehmens verglichen werden.Der QR-Code erlaubt es, Informationen in einem quadratischen Feld darzustellen. Dies können Webadressen (URLs), Texte, PDF-Dokumente, Links zu Facebook-Seiten und vieles mehr sein.Abbildung 9: Der QR-Code codiert den Text «MIA21», generiert mit http://www.qr-code-generator.com/ MIA21, Mit Daten jonglieren – Version 09/202017
Lernphase B: Vertiefung2.1.8Fehlererkennende und -korrigierende CodesDatenspeicherung und -übertragung ist grundsätzlich unzuverlässig. Störsignale können jederzeit auftreten. Bei der Datenspeicherung und -übertragung müssen also Mechanismen eingebaut werden, die erkennen, wann ein Fehler aufgetreten ist. So kann die fehlerhafte Dateneinheit noch einmal gesendetwerden. Besser noch sind Codes, die Fehler nicht nur erkennen, sondern – zumindest bis zu einem gewissen Grad - auch korrigieren können.Zusätzlich zu den eigentlichen Daten werden „Hilfsinformationen “ als so genannte Redundanz eingeführt. Diese dienen nur dazu, Fehler zu erkennen.Im Mobilfunk UMTS wird z.B. ein Bit (z.B. 1) auf 8 Bits aufgespreizt, d.h. anstelle von 1 wird 11111111übertragen. Ebenso wird eine 0 als 00000000 übertragen. Die Wahrscheinlichkeit, dass alle 8 Bits voneiner Störung betroffen sind, ist äusserst gering. Trifft ein Bitmuster ein, welches gleichzeitig 0- und 1Werte enthält, weiss der Computer, dass ein Fehler au
2.1 Wissenswertes zum Codieren von Daten Digitale Geräte arbeiten mit digitalen Daten. Nicht nur Buchstaben und Zahlen, sondern auch Bilder und Töne werden als digitale Daten in 0 und 1 codiert. 2.1.1 Analoge und digitale Daten Alles, was in digitalen Geräten gespeichert und verarbeitet wird, kann unter dem Begriff „Daten“ zusam-