Title: RMA Basiswissen IT
1RMABasiswissen IT
- Ich glaube, es gibt einen weltweiten Bedarf an
vielleicht fünf Computern - (IBM-Chef Thomas Watson, 1943 )
2Basiswissen IT Rechnerarchitektur
- Die meisten Computer besitzen die sogenannte
Von-Neumann-Architekur. Programm und Daten
teilen sich denselben Speicherbereich. - Erste Computer Z1 (1937) und Z3 (1941) von
Konrad Zuse und ENIAC (1944) von Eckert, Mauchly,
Goldstine, von Neumann - 1947 wird der Transistor erfunden und kann bald
die Röhren ersetzen. - Künftige Computer werden vorausichtlich
leichter als 1.5 Tonnen sein
3Basiswissen IT Rechnerarchitektur
- 4 Komponenten
- Arithmetisch-logische Einheit (ALU)
- Steuereinheit
- Speicher (RAM, ROM)
- Eingabe- und Ausgabeinheiten (Tastatur, Maus,
Bildschirm, Drucker, Harddisk, Netzwerkkarte etc) - (ALU und Steuereinheit heute normalerweise zur
CPU (Central-Processing-Unit) vereint.) - Die ALU rechnet (inkl. logische Operationen)
- Die Steuereinheit holt Daten und
Programmanweisungen aus dem Speicher und führt
die Anweisungen unter Benutzung der ALU aus.
4Basiswissen IT Bits Bytes - Binärzahlen
- Heutige Computer basieren auf Binärzahlen (Bits,
ja/nein, 0 und 1), - Einfachere Realisierung von Binärarithmetik und
-logik mit elektrischen Schaltkreisen. - Binärsytem Jede Stelle (Bit) entspricht einer
2er Potenz. - Beispiel
- 01101101
- 027 1 26 125 0 24 123 1 22
021 120 - 64 32 8 4 1 109
5Basiswissen IT Bits Bytes - Binärzahlen
- Addition (und andere Arithmetik) genau wie im
Dezimalsystem - 00100011 3510
- 01000101 6910
- --------------------
- 01101000 10410
- Einfach Multiplikation mit 2 ist Linksshift,
Division durch 2 ist Rechtsshift. - Logische Operationen
- NOT () 1 0, 01
- AND () 1 1 1, 1 0 0 , 0 1 0, 0 0
0 - OR () 1 1 1, 1 0 0 1 1, 0 0 0
- XOR () 1 1 0 0 0, 1 0 01 1
6Basiswissen IT Bits Bytes - Größen
- Mit n Bits kann man 2n Zahlen darstellen.
- Vorzeichen durch Zweierkomplement.
N Name Bytes Wertebereich
4 Nibble 0.5 0...15 -8 ...7
8 Byte 1 0...255 -128...127
16 Word 2 0...65.535 -32768...32767
32 Double Word 4 0...4.2109 -2.15 109... 2.15 109
7Basiswissen IT Bits Bytes - Hexadezimalsystem
- Sehr gebräuchlich ist das Hexadezimalsystem, jede
Stelle entpricht einer Potenz von 16 - Neue Zeichen A10, B11, C12, D13,
- E14, F15
- Eine Stelle entspricht einem Nibble, zwei Stellen
einem Byte, 4 Stellen einem Word, 8 Stellen einen
Doubleword - Beispiel
- 0xBAFF
- 11163 10162 15161 15160
- (47817)10
- 1011 1010 1111 11112
8Basiswissen IT Bits Bytes - Gleitkommazahlen
- Reelle Zahlen werden im Gleitkommaformat
dargestellt. - Form z mbe
- m heißt Mantisse, b Basis, e Exponent.
- Beispiel
- 314.1592 3.141592 102
- Format im Computer (single precision)
-
9Basiswissen IT Bits Bytes - Speicher
- Speicher sind in Bytes (8 bit) organisiert.
- In der vorherrschenden 32-bit Architektur hat
jede Speicherzelle eine eindeutige Adresse von 4
Byte über die sie angesprochen werden kann. - Speichergrößen
Name Definition
Kilobyte, kB 1024 Bytes
Megabyte, MB 1024 kB 220 Bytes 106 Bytes
Gigabyte, GB 1024 MB 230 Bytes 109 Bytes
Terabyte, TB 1024 GB 240 Bytes 1012 Bytes
10Basiswissen IT Bits Bytes ASCII Code
- Zur Darstellung von Buchstaben wurde der ASCII
Code eingeführt (1968). Er benutzt nur 7-bit
(0-127).
11Basiswissen IT Bits Bytes Beyond ASCII
- ISO-8859 Code benutzt das 8.Bit zur Kodierung
westeuropäischer Sonderzeichen (ä, ö, ü usw.) - Unicode definiert 1.114.112 Zeichen, kodiert mit
maximal 4 Byte. - Heute am gebräuchlichsten UTF-8, stellt Unicode
mit Byteketten variable Länge dar und enthält den
ASCII Code.
12Basiswissen IT Betriebssysteme
- Herzstück eines jeden Computers.
- Betriebsysteme sorgen für die Verwaltung und die
Koordination der Ressourcen, z.B - Prozessmanagement
- Dateisystem
- Ein- und Ausgaben
- Unzählige Z.B. Unix, Linux, VAX, MSDOS, Windows,
MacOS, NeXT, BeOS usw.
13Basiswissen IT Betriebssysteme - Prozesse
- Jedes Programm läuft als Prozess
- CPU-Zeit
- Speicherbereich
- E/A- Zugriff
- Multitasking (Nebenläufigkeit)
- Scheinbare Gleichzeitig durch schnelles Wechseln
zwischen Prozessen. Drei Formen - Präemptives Multitasking
- Koordiniertes Multitasking
- Echte Parallelität
- Multithreading
- Threads (engl. Faden) sind Unterprozesse
- Prozess übernimmt Koordination der
Thread-Ressourcen.
14Basiswissen IT Programmiersprachen
- Maschinencode Folge von Binärzahlen die CPU
als Befehle interpretiert. - Assembler Wie Maschinencode, mit merkbaren
Kürzeln (Mnemonics) - z.B.
- jmp 0xffffff00
- (springe zu Speicherstelle 0xffffff00)
15Basiswissen IT Programmiersprachen
- Hochsprachen Müssen in Maschinencode übersetzt
werden - Compiler Übersetzt Programm als ganzes
schneller Code. - Interpreter Übersetzt Programm zeilenweise
langsamer Code. - Hybrid Kompilat in Zwischencode (z.B Java
plattformunabhängiger Bytecode), der dann
interpretiert wird (z.B. von der JVM).
16Basiswissen IT Programmiersprachen
- Fünf Generationen
- Maschinensprache
- Assembler
- Hochsprachen (z.B. FORTRAN, COBOL, PASCAL, BASIC,
C) - 4. Generation (Anwendungssprachen), z.B. SQL
- KI-Sprachen. Z.B Prolog (für logische Probleme)
- Objektorientierte Sprachen (z.B. SmallTalk, C,
Java)
17Basiswissen IT Programmiersprachen
- Typische Elemente
- Datentypen (z.B. Ganzzahlen, Gleit-kommazahlen,
Arrays, Datenverbünde, Objekte) - Variablen
- Logische und arithmetische Operatoren
- Verzweigungen (IFTHEN-ELSE)
- Schleifen (FOR, WHILE)
- Unterprogramme
- Ein/Ausgabefunktionen
- Wiederverwendbarkeit Bibliotheken von Programmen
einbinden (Linken)
18Basiswissen IT Programmiersprachen
- Beispiel Hello World in C
- include ltstdio.hgt
- int main()
-
- int i 0
- for(i 0 ilt10 i)
- if( i 2 0)
- printf(Hello world d!\n, i)
-
- else
- printf(Hallo Welt d!\n, i)
-
-
- return 0
-
-
Ausgabe Hello world 0! Hallo Welt 1! Hello world 2! Hallo Welt 3! Hello world 4! Hallo Welt 5! Hello world 6! Hallo Welt 7! Hello world 8! Hallo Welt 9!
19Basiswissen IT Anwendungen
- Hauptanwendungen des Computers
- Numerische Berechnungen
- Datenbanken
- Text-, Bild- Tonverarbeitung
- Kommunikation
- Steuern Regeln
- Spielen
20Basiswissen IT Anwendungen-Numerik
- Historisch erste Anwendung ComputerRechner
- ENIAC war z.B zur Berechnung ballistischer
Flugbahnen fürs Militär gedacht. - Numerische Algorithmen stecken in fast jeder
Anwendung Z.B. - Berechung des Spektrum eines Klanges,
- ein Weichzeichnerfilter in Photoshop,
- ein aufwändiges Klimamodell auf einem
Supercomputer. - Berechnung eines Neuronenmodells zur
Beat-Erkennung.
21Basiswissen IT Anwendungen - Datenbanken
- Elektronischer Karteikasten zur Speicherung und
Manipulation von Daten beliebiger Art, z.B. - Personaldaten einer Firma
- Lagerbestand
- Bibliothekskataloge
- Private mp3- Sammlung
- Webseiten
22Basiswissen IT Anwendungen - Datenbanken
- Heute am weitverbreitesten Relationale
Datenbanken. - Daten werden in Datenfeldern zu Datensätzen
zusammengefasst. - Datensätze werden mit eindeutigen Schlüsseln in
Tabellen gespeichert. - Man kann Tabellen
- erzeugen, löschen, verändern, kombinieren,
abfragen. - Gängige Abfragesprachen basieren meistens auf SQL
(Structured Query Language).
23Basiswissen IT Anwendungen
- Text-, Bild- Tonverarbeitung Häufigste
Anwendung im Personalbereich. Kennt jeder... - Kommunikation Dito. E-Mail, Chat, IP-Telefonie
etc... - Steuern Regeln Über Hardware-Schnittstellen
ein- oder zweiseitige Kommunikation mit externen
Geräten zum Regeln, Steuern, und Überwachen
derselben. Z.B. MIDI - Spielen...
24Basiswissen IT Internet Co.
- Historisch entstand das Internet aus dem
ARPANET(1969), das vier militärische forschende
Universitäten in Amerika über Telefonleitungen
vernetzte. - Internet ist ein Netz von Netzen
25Basiswissen IT Internet Co. TCP/IP
- Netzwerkprotokolle Kommunikation zwischen
Rechnern - Meistens basierend auf TCP/IP.
- IP (Internet Protocol). Erste logische Schicht.
- IPv4 benutzt 32-bit Adressen, z.B. 192.168.202.53
(0xC0A8CA34) - Eindeutige IP-Adresse (Telefonnummer) für jeden
Rechner. - 65536 verschiedene Ports (Nebenanschlüsse).
- HTTP benutzt z.B Port 80, SMTP (Mail) Port 25.
- DNS-Server bilden das Telefonbuch
- Unter dem Eintrag www.uni-hamburg.de ist z.B.
die IP-Adresse 132.100.32.72 zu finden.
26Basiswissen IT Internet Co. TCP/IP
- IP verschickt Daten paketweise.
- Paket besteht aus
- Header (mit IP-Adresse)
- Datenteil
- Die Daten stellen zweite logische Schicht dar
die Transportschicht, z.B. - TCP (Transmission Control Protocol)
- UDP (User Datagram Protocol)
- Mit TCP/IP- oder UDP-Paketen werden weitere
Protokolle implementiert werden, die
Internetdienste (höchste Schicht). - Z.B. HTTP, FTP, SMTP, TELNET usw.
27Basiswissen IT Internet Co. - WWW
- Das WWW entstand 1991 im CERN und ist das
logische Netz der Webserver im Internet. - WWW baut auf HTTP auf (HyperText Transfer
Protocol), das wiederum TCP/IP benutzt. - Ein Webserver ist ein Programm, kein Rechner!
- HTTP benutzt URLs (oder URI), z.B.
http//www.google.de/search?hldequnihamburg - um eine Ressource im WWW zu lokalisieren.
28Basiswissen IT Internet Co. - HTTP
- Typische Kommunikation
- User http//www.mu-on.org/RMA/RMA.html
- Browser fragt (s)einen DNS nach der IP von
www.mu-on.org, Antwort 212. 227.118.118. - Browser stellt TCP/IP Verbindung mit 212.
227.127.91auf Port 80 her. - Browser schickt Anfrage an den Webserver
GET /RMA.html HTTP/1.1 - Webserver antwortet
- HTTP/1.1 200 OK
- Server Apache/1.3.29 (Unix)
- Content-Length 3467
- Content-Language de
- Content-Type text/html
- Connection close
- (ab hier Inhalt von RMA.html)
29Basiswissen IT Internet Co. - HMTL
- Webseiten typischerweise in HTML (HyperText
Markup Language) - HTML ist eine Dokumentenbeschreibungssprache
keine Programmiersprache, kann aber
(Javascript-)Programmteile enthalten! - HTML-Seiten können per CGI (Common Gateway
Interface) dynamisch vom Webserver erzeugt
werden. - Z.B. Suchanfrage bei Google. Webserver startet
CGI-Script, dass in der Datenbank nachschaut, und
anhand der Ergebnisse eine HTML-Datei erzeugt. - Verbreiteste CGI-Sprachen Perl, PHP.
30Basiswissen IT Internet Co. - HTML
- Beispiel Hello World in HTML
- lthtmlgt
- ltheadgt
- lttitlegtHello worldlt/titlegt
- lt/headgt
- ltbodygt
- lth1gt Hello worldlt/h1gt
- ltpgt
- In diesem Paragraphen stehen unwichtige Dinge.
- lt/pgt
- lt/bodygt
- lt/htmlgt
31Basiswissen IT Internet Co. - XML
- XML (eXtensible Markup Language)
- Zunehmende weite Verbreitung für verschiedene
Zwecke - Sehr flexibel
- Kann quasi selbstbeschreibend sein.
- Trennung von Daten und Darstellung
(Document/View) - Eignet sich auch als Datenbankformat.
- Beliebigen Daten zwischen Tags (Anfangs/Endtag)
- Tags haben einen Name und beliebige Attribute,
z.B - ltcreator type"composer"gtFranz
Schubertlt/creatorgt - Baumstruktur mit einem höchsten Knoten
- Man kann eigene Dokumententypen definieren
(DTDs, XML Schema)
32Basiswissen IT Internet Co. - XML
- XSL(T) Transformation von XML-Dokument in z.B.
- HTML-Seite
- PDF-Datei
- Finale-Partitur
- Anderes XML Dokument
- Etc.
33Basiswissen IT Internet Co. - XML
- BEISPIEL MusicXML
- lt?xml version"1.0" standalone"no"?gt
- lt!DOCTYPE score-partwise PUBLIC
"-//Recordare//DTD MusicXML 1.0 Partwise//EN"
"http//www.musicxml.org/dtds/partwise.dtd"gt - ltscore-partwisegt
- ltworkgt
- ltwork-numbergtD. 911lt/work-numbergt
- ltwork-titlegtWinterreiselt/work-titlegt
- lt/workgt
- ltmovement-numbergt22lt/movement-numbergt
- ltmovement-titlegtMutlt/movement-titlegt
- ltidentificationgt
- ltcreator type"composer"gtFranz
Schubertlt/creatorgt - ltcreator type"poet"gtWilhelm Müllerlt/creatorgt
- lt/identificationgt
- lt/score-partwisegt