Basisinformationstechnologie I 
Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung 
Jan G. W...
Inhalte der heutigen Sitzung 
Überblick: Rechner-/Computerentwicklung 
 Moore 
 Leibniz 
 Babbage 
 Turing 
 Exkurs: ...
Rechner-/Computerentwicklung
Rechner-/Computerentwicklung 
„Wenn sich die Luftfahrtindustrie 
genauso schnell wie die 
Computertechnologie entwickelt 
...
Das Mooresche Gesetz (Moore‘s Law) 
„Die Anzahl der 
Transistoren, die auf 
einem Chip (IC, Integrated 
Circuit) untergebr...
Rechner-/Computerentwicklung 
Ganz früher: Abakus, etc. 
17. Jahrhundert 
 Blaise Pascal (1623-1662) 
Rechenmaschine „Pas...
Rechner-/Computerentwicklung 
Charles Babbage (1792-1871) 
 Difference Engine / 
Differenzmaschine 
 Lösung polynominale...
Rechner-/Computerentwicklung: Colossus (1943) 
COLOSSUS (1943, u.a. Turing) 
ENIGMA / Lorenz-Schlüsselmaschine
Alan Turing 
 1912 (London) – 1954 (Wilmslow, Cheshire) 
 1936: On Computable Numbers, with an 
Application to the “Ents...
Der Turingtest
Turingtest
Eine Implementierung des Turingtests: ELIZA 
 Benutzer: „Ich habe ein 
Problem mit meinem Auto.“ 
 ELIZA: „Warum, sagen ...
http://www.cleverbot.com/
Rechnerentwicklung
ENIAC (1946, Electronic Numerical Integrator and Computer)
John von Neumann 
John von Neumann 
 * 1903 (Budapest) als 
János von Neumann 
zu Margitta, 
† 1957 (Washington D.C.) 
 ...
Spieltheorie
X O 
X 
O
X O 
X 
O 
X O 
X 
O O 
X O 
X 
O O
Spieltheorie nach von Neumann und Morgenstern 
„Theory of Games and Economic Behavior“ (1944) 
 Spiel („game“): Gesamthei...
Spieltheorie nach von Neumann und Morgenstern 
Formale Definition: Ein Spiel Γ (Gamma) in Normalform 
ist vollständig besc...
Koch 
Ein Spiel in Normalform 
Bewertet die 
Köchin positiv 
(푠21) 
Bewertet die 
Köchin negativ 
(푠22) 
Köchin 
Bewertet ...
Juul, Jesper: „255,168 ways of playing Tic Tac Toe” 
(„http://www.jesperjuul.net/ludologist/255168-ways-of-playing-tic-tac...
…ein wenig abstrakter… 
푥0 
푠푀퐴푋1 
푠푀퐴푋2 
푥1 푥2 
푥3 
푠푀퐴푋3 
푥4 푥5 푥6 푥7 푥8 푥9 푥10 푥11 푥12 
3 12 8 2 4 6 14 5 2 
Welche Str...
Der Minimax-Algorithmus 
푥0 
푠푀퐴푋1 
푠푀퐴푋2 
3 
푥1 푥2 
푥3 
푠푀퐴푋3 
푥4 푥5 푥6 푥7 푥8 푥9 푥10 푥11 푥12 
3 12 8 2 4 6 14 5 2 
MAX 
M...
Die Von-Neuman-Architektur
Universalrechner: Struktur des Rechners ist unabhängig 
von Universalrechner 
dem zu lösenden Problem, d.h. keine starre 
...
Turingmaschine 
Anforderung: Entwurf eines allgemeinen Automaten 
 Automat, der wahlfreien Zugang (random access) auf all...
Entscheidungsproblem
……… 
……… 
……… 
……… 
……… 
……… 
Von-Neumann-Architektur
Zentrale Recheneinheit 
Von-Neumann-Architektur 
(CPU = Central Processing Unit) 
Steuerwerk 
Rechenwerk 
(ALU) 
 Steuerw...
Zentrale Recheneinheit 
Von-Neumann-Architektur 
(CPU = Central Processing Unit) 
Steuerwerk 
Rechenwerk 
(ALU) 
Interne D...
Zentrale Recheneinheit 
Von-Neumann-Architektur 
(CPU = Central Processing Unit) 
Steuerwerk 
Rechenwerk 
(ALU) 
Interne D...
Zentrale Recheneinheit 
Von-Neumann-Architektur 
(CPU = Central Processing Unit) 
Steuerwerk 
Rechenwerk 
(ALU) 
Interne D...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in 
fünf Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPER...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in 
fünf Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPER...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in 
fünf Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPER...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in fünf 
Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPER...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in fünf 
Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPER...
Von-Neumann-Architektur 
Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten: 
 FETCH 
 DECODE 
 FETCH OPERA...
Von-Neumann-Architektur 
Vor- und Nachteile
Von-Neumann-Architektur 
Vorteile 
 Bedeutende Idee: Zunächst Laden des Programmes und der 
Daten in ein und denselben Sp...
Von-Neumann-Architektur 
Nachteile 
 Da Daten und Befehle im Speicher gehalten werden, 
wird die Verbindung und Datenüber...
Heutige Computer
CPU-Cache
CPU-Cache 
Grundidee des Caches: Häufig gebrauchte 
Speicherworte / Daten sollten im Cache stehen, um das 
Problem des von...
Cache-Hierarchie 
L1 L2 L3 Ln
Cache / Caching als allgemeines Prinzip
Speicherhierarchie
Inhalte der heutigen Sitzung 
Überblick: Rechner-/Computerentwicklung 
 Moore 
 Leibniz 
 Babbage 
 Turing 
 Exkurs: ...
/
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I
Nächste SlideShare
Wird geladen in …5
×

BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I

867 Aufrufe

Veröffentlicht am

BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I

Veröffentlicht in: Bildung
  • Als Erste(r) kommentieren

  • Gehören Sie zu den Ersten, denen das gefällt!

BIT I WiSe 2014 | Basisinformationstechnologie I - 04: Rechnertechnologie I

  1. 1. Basisinformationstechnologie I Universität zu Köln. Historisch-Kulturwissenschaftliche Informationsverarbeitung Jan G. Wieners // jan.wieners@uni-koeln.de Wintersemester 2014/15 12. November 2014 – Rechnertechnologie I
  2. 2. Inhalte der heutigen Sitzung Überblick: Rechner-/Computerentwicklung  Moore  Leibniz  Babbage  Turing  Exkurs: Turingtest  Weizenbaum  von Neumann  Exkurs: Spieltheorie  Die von Neumann Rechnerarchitektur  Konzept: Universalrechner  Cache als Hardwareelement  Caching als Grundmechanismus Zeitgemäße Rechnerhardware  Motherboard, etc.
  3. 3. Rechner-/Computerentwicklung
  4. 4. Rechner-/Computerentwicklung „Wenn sich die Luftfahrtindustrie genauso schnell wie die Computertechnologie entwickelt hätte, würde ein Flugzeug 500 Dollar kosten und könnte die Erde in 20 Minuten mit 5 Gallonen Treibstoff umrunden. Allerdings hätte es die Größe eines Schuhkartons.“ (Gordon Moore, zitiert nach: Tanenbaum, Andrew S.: Computerarchitektur, S. 43.)  Kostenreduzierung  Leistungsfähigkeit (Performance)  Ressourcenverbrauch  Strukturreduzierung
  5. 5. Das Mooresche Gesetz (Moore‘s Law) „Die Anzahl der Transistoren, die auf einem Chip (IC, Integrated Circuit) untergebracht werden können, verdoppelt sich alle 2 Jahre.“
  6. 6. Rechner-/Computerentwicklung Ganz früher: Abakus, etc. 17. Jahrhundert  Blaise Pascal (1623-1662) Rechenmaschine „Pascaline“ [Addition / Subtraktion]  Gottfried Wilhelm Leibniz (1646-1716): Rechenmaschine [Addition / Subtraktion Division / Multiplikation] Bildnachweis: Pascaline: David Monniaux Leibniz‘ Rechenmaschine: Kolossos, http://de.wikipedia.org/w/index.php?title=Datei:Leibnitzrechenmaschine.jpg&filetimestamp=20060706122903
  7. 7. Rechner-/Computerentwicklung Charles Babbage (1792-1871)  Difference Engine / Differenzmaschine  Lösung polynominaler Fkt.  [Addition]  Analytical Engine (Entwurf)  Sollte von Dampfmaschine betrieben werden  Wäre mehr als 30 Meter lang und 10 Meter breit gewesen  Deutet zahlreiche Innovationen und Konzepte an, u.a.:  Eingabe (Befehle u. Daten) über Lochkarten  Ausgabe über Lochkartenstanzer  Speicherwerk  Rechenwerk Bildnachweis: Detailaufnahme Difference Engine: Carsten Ullrich
  8. 8. Rechner-/Computerentwicklung: Colossus (1943) COLOSSUS (1943, u.a. Turing) ENIGMA / Lorenz-Schlüsselmaschine
  9. 9. Alan Turing  1912 (London) – 1954 (Wilmslow, Cheshire)  1936: On Computable Numbers, with an Application to the “Entscheidungsproblem”  Turingmaschine  2. Weltkrieg: „Code Knacker“, u.a. „Turing- Bombe“, „Colossus“  1945-1948: National Physical Laboratory: ACE (Automatic Computing Engine), Referenz zu Babbages „Analytical Engine“  1948-1949: „Manchester Mark I“, Röhrencomputer  1950: „Computing machinery and intelligence“  Turingtest
  10. 10. Der Turingtest
  11. 11. Turingtest
  12. 12. Eine Implementierung des Turingtests: ELIZA  Benutzer: „Ich habe ein Problem mit meinem Auto.“  ELIZA: „Warum, sagen Sie, haben Sie ein Problem mit Ihrem Auto?“ -----  Benutzer: „Ich habe ein Problem mit meinem Vater.“  ELIZA: „Erzählen Sie mir mehr über Ihre Familie!“ -----  Benutzer: „Krieg ist der Vater aller Dinge.“  ELIZA: „Erzählen Sie mir mehr über Ihre Familie!“
  13. 13. http://www.cleverbot.com/
  14. 14. Rechnerentwicklung
  15. 15. ENIAC (1946, Electronic Numerical Integrator and Computer)
  16. 16. John von Neumann John von Neumann  * 1903 (Budapest) als János von Neumann zu Margitta, † 1957 (Washington D.C.)  U.a. Arbeiten zur Quantenmechanik, Spieltheorie, Manhattan-Projekt (mit Oppenheimer)  Informatik: Von-Neumann-Architektur bzw. Von- Neumann-Rechner: Rechner, in dem Daten und Programm binär codiert in einem Speicher liegen.
  17. 17. Spieltheorie
  18. 18. X O X O
  19. 19. X O X O X O X O O X O X O O
  20. 20. Spieltheorie nach von Neumann und Morgenstern „Theory of Games and Economic Behavior“ (1944)  Spiel („game“): Gesamtheit der Regeln, die das Spiel beschreiben  Spielpartie („play“): Vorgang, in dem das Spiel gespielt wird  Spielzug („move“)  Zugwahl („choice“)  Spielregeln determinieren, welche Spielsymbole zu welchem Spielzeitpunkt auf welche Art und Weise bewegt werden dürfen
  21. 21. Spieltheorie nach von Neumann und Morgenstern Formale Definition: Ein Spiel Γ (Gamma) in Normalform ist vollständig beschrieben durch das Tripel Γ = N, S, u :  푁 die finite Anzahl der Spielerinnen und Spieler aus der Spielermenge 푁 = {1, … , 푛}.  푆 den Strategieraum. Der Strategieraum gibt die Menge aller möglichen Strategiekombinationen 푠 = (푠1, … , 푠푖 , … , 푠푛) aus den Strategien der einzelnen Spieler an, d.h. 푠 ∈ 푆. Der Strategieraum S ist definiert als kartesisches Produkt der Strategiemengen 푆 = 푆1 × ⋯ × 푆푛, wobei 푆푖 eine endliche Menge von Entscheidungen und Aktionen für jeden Spieler 푖 in 푁 bezeichnet.  푢 = (푢1, … , 푢푛) die Nutzenfunktionen, wobei 푢푖 ∶ 푆 ↦ ℝ die Auszahlungs- oder Nutzenfunktion des Spielers 푖 bezeichnet. Wird die Strategiekombination 푠 gespielt, so lässt sich mit 푢푖 (푠) der Nutzen für Spieler 푖 bestimmen.
  22. 22. Koch Ein Spiel in Normalform Bewertet die Köchin positiv (푠21) Bewertet die Köchin negativ (푠22) Köchin Bewertet den Koch positiv (푠11) Köchin: 50 Euro Koch: 50 Euro Köchin: 0 Euro Koch: 100 Euro Bewertet den Koch negativ (푠12) Köchin: 100 Euro Koch: 0 Euro Köchin: 20 Euro Koch: 20 Euro 푁 = {1, 2} 푆 = 푠11, 푠12 × 푠21, 푠22 = { 푠11, 푠21 , 푠11, 푠22 , 푠12, 푠21 , 푠12, 푠22 }
  23. 23. Juul, Jesper: „255,168 ways of playing Tic Tac Toe” („http://www.jesperjuul.net/ludologist/255168-ways-of-playing-tic-tac-toe) Extensivform von Spielen (Tic Tac Toe)
  24. 24. …ein wenig abstrakter… 푥0 푠푀퐴푋1 푠푀퐴푋2 푥1 푥2 푥3 푠푀퐴푋3 푥4 푥5 푥6 푥7 푥8 푥9 푥10 푥11 푥12 3 12 8 2 4 6 14 5 2 Welche Strategie sollte die das Spiel beginnende Spielerin 푀퐴푋 (Dreieck) im oben wiedergegebenen Spiel mit zwei Spielrunden verfolgen, um optimal zu agieren und ihre Auszahlung zu maximieren? Wie wird sich wohl der Spieler 푀퐼푁 (Quadrat) verhalten?
  25. 25. Der Minimax-Algorithmus 푥0 푠푀퐴푋1 푠푀퐴푋2 3 푥1 푥2 푥3 푠푀퐴푋3 푥4 푥5 푥6 푥7 푥8 푥9 푥10 푥11 푥12 3 12 8 2 4 6 14 5 2 MAX MIN 3 2 2 min(3,12,8)=3 min(2,4,6)=2 max(3,2,2)=3 min(14,5,2)=2
  26. 26. Die Von-Neuman-Architektur
  27. 27. Universalrechner: Struktur des Rechners ist unabhängig von Universalrechner dem zu lösenden Problem, d.h. keine starre Programmierung des Rechners über hardwareseitige Repräsentation (z.B. Kabelverbindungen bei ENIAC) des Programmes.
  28. 28. Turingmaschine Anforderung: Entwurf eines allgemeinen Automaten  Automat, der wahlfreien Zugang (random access) auf alle Speicherplätze erlaubt Formuliert von Alan M. Turing in „On computable numbers, with an application to the Entscheidungsproblem“ (1937)
  29. 29. Entscheidungsproblem
  30. 30. ……… ……… ……… ……… ……… ……… Von-Neumann-Architektur
  31. 31. Zentrale Recheneinheit Von-Neumann-Architektur (CPU = Central Processing Unit) Steuerwerk Rechenwerk (ALU)  Steuerwerk  Rechenwerk
  32. 32. Zentrale Recheneinheit Von-Neumann-Architektur (CPU = Central Processing Unit) Steuerwerk Rechenwerk (ALU) Interne Datenwege (Bus-System)  Steuerwerk  Rechenwerk  Interne Datenwege Funktionsweise & Eigenschaften  Zahlen werden im Rechner binär dargestellt  Universalrechner  Programme und Daten werden in einem gemeinsamen Speicher abgelegt  Befehle geben nur die Speicheradresse an, wo die Daten abgelegt sind, nicht die Daten selbst
  33. 33. Zentrale Recheneinheit Von-Neumann-Architektur (CPU = Central Processing Unit) Steuerwerk Rechenwerk (ALU) Interne Datenwege (Bus-System) Speicherwerk  Steuerwerk  Rechenwerk  Interne Datenwege  Arbeitsspeicher / Speicherwerk Funktionsweise & Eigenschaften  Zahlen werden im Rechner binär dargestellt  Universalrechner  Programme und Daten werden in einem gemeinsamen Speicher abgelegt  Befehle geben nur die Speicheradresse an, wo die Daten abgelegt sind, nicht die Daten selbst
  34. 34. Zentrale Recheneinheit Von-Neumann-Architektur (CPU = Central Processing Unit) Steuerwerk Rechenwerk (ALU) Interne Datenwege (Bus-System) Speicherwerk Ein- /Ausgabewerk  Steuerwerk  Rechenwerk  Interne Datenwege  Arbeitsspeicher / Speicherwerk  Ein-/Ausgabewerk Funktionsweise & Eigenschaften  Zahlen werden im Rechner binär dargestellt  Universalrechner  Programme und Daten werden in einem gemeinsamen Speicher abgelegt  Befehle geben nur die Speicheradresse an, wo die Daten abgelegt sind, nicht die Daten selbst
  35. 35. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)
  36. 36. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)  FETCH: Laden des nächsten zu bearbeitenden Befehls in das Befehlsregister (bildet gemeinsam mit Steuerwerk und Rechenwerk die CPU).
  37. 37. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)  FETCH: Laden des nächsten zu bearbeitenden Befehls in das Befehlsregister (bildet gemeinsam mit Steuerwerk und Rechenwerk die CPU).  DECODE: Befehl wird durch Steuerwerk in Schaltinstruktionen für das Rechenwerk übersetzt.
  38. 38. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)  FETCH: Laden des nächsten zu bearbeitenden Befehls in das Befehlsregister (bildet gemeinsam mit Steuerwerk und Rechenwerk die CPU).  DECODE: Befehl wird durch Steuerwerk in Schaltinstruktionen für das Rechenwerk übersetzt.  FETCH OPERANDS: Operanden holen, die durch den Befehl verändert werden sollen.
  39. 39. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)  FETCH: Laden des nächsten zu bearbeitenden Befehls in das Befehlsregister (bildet gemeinsam mit Steuerwerk und Rechenwerk die CPU).  DECODE: Befehl wird durch Steuerwerk in Schaltinstruktionen für das Rechenwerk übersetzt.  FETCH OPERANDS: Operanden holen, die durch den Befehl verändert werden sollen.  EXECUTE: Rechenwerk führt die Operation aus.
  40. 40. Von-Neumann-Architektur Befehlsverarbeitung  Von-Neumann-Zyklus in fünf Teilschritten:  FETCH  DECODE  FETCH OPERANDS  EXECUTE  UPDATE PROGRAM COUNTER (UPC)  FETCH: Laden des nächsten zu bearbeitenden Befehls in das Befehlsregister (bildet gemeinsam mit Steuerwerk und Rechenwerk die CPU).  DECODE: Befehl wird durch Steuerwerk in Schaltinstruktionen für das Rechenwerk übersetzt.  FETCH OPERANDS: Operanden holen, die durch den Befehl verändert werden sollen.  EXECUTE: Rechenwerk führt die Operation aus.  UPC: Erhöhung des Befehlszählers, damit der Rechner weiß, an welcher Stelle des Programms er sich gerade befindet. Geschieht parallel zu DECODE und FETCH OPERANDS.
  41. 41. Von-Neumann-Architektur Vor- und Nachteile
  42. 42. Von-Neumann-Architektur Vorteile  Bedeutende Idee: Zunächst Laden des Programmes und der Daten in ein und denselben Speicher, danach Ausführung.  Vor von Neumanns Ansatz war das Programm hardwareseitig verschaltet / repräsentiert oder wurde über Lochstreifenkarten schrittweise eingelesen und sofort (sequentiell) verarbeitet.  Nun möglich:  Sprünge auf vorhergehende und spätere Programmsequenzen  Modifikation des Programmcodes während des Programmablaufes  Paradigmawechsel: Übergang vom starren Programmablauf zur flexiblen Programmsteuerung bzw. von der Rechenmaschine zur Datenverarbeitungsmaschine
  43. 43. Von-Neumann-Architektur Nachteile  Da Daten und Befehle im Speicher gehalten werden, wird die Verbindung und Datenübertragung zwischen CPU und Speicher über den Systembus zum Von- Neumann-Flaschenhals:  Jeglicher Datenverkehr von und zur CPU wird über den internen Bus abgewickelt, dessen Transfergeschwindigkeit langsamer ist, als die Verarbeitungsgeschwindigkeit der CPU. Dieses Problem versucht man in modernen PC's durch die Verwendung von schnellem Cache-Speicher abzuschwächen, der meist in die CPU integriert ist.
  44. 44. Heutige Computer
  45. 45. CPU-Cache
  46. 46. CPU-Cache Grundidee des Caches: Häufig gebrauchte Speicherworte / Daten sollten im Cache stehen, um das Problem des von-Neumann-Flaschenhalses zu mindern. Funktionsprinzip des Cache:  Die CPU fordert ein gesuchtes Datum oder eine gesuchte Instruktion im Cache an.  Bei einem Cache-Hit befindet sich das Datum/Instruktion im Cache.  Bei einem Cache-Miss (die gewünschte Information befindet sich nicht im Cache) wird ein bestimmter Bereich, der das gesuchte Datum bzw. die gesuchte Instruktion enthält, aus dem Hauptspeicher in den Cache geladen (in der Hoffnung, dass folgende Zugriffe sich auf diesen aktualisierten Bereich beziehen!).
  47. 47. Cache-Hierarchie L1 L2 L3 Ln
  48. 48. Cache / Caching als allgemeines Prinzip
  49. 49. Speicherhierarchie
  50. 50. Inhalte der heutigen Sitzung Überblick: Rechner-/Computerentwicklung  Moore  Leibniz  Babbage  Turing  Exkurs: Turingtest  Weizenbaum  von Neumann  Exkurs: Spieltheorie  Die von Neumann Rechnerarchitektur  Konzept: Universalrechner  Cache als Hardwareelement  Caching als Grundmechanismus Zeitgemäße Rechnerhardware  Motherboard, etc.
  51. 51. /

×