Grundläggande programmeringsteknik Datorsystem



Relevanta dokument
Datorhistoria Introduktion till PBL

BERÄKNINGSKONSTENS HISTORIA - Från kulram till dator

1642 uppfann Blaise Pascal världens första mekaniska räknemaskin. Den kunde både addera och subtrahera. Den kan ses som en föregångare till datorn.

Vad är en dator? Introduktion till datorer och nätverk. Pontus Haglund Institutionen för datavetenskap (IDA) 21 augusti 2018

Datorhistoria. Källor:

Datorhistorik. Föreläsning 3 Datorns hårdvara EDSAC. Eniac. I think there is a world market for maybe five computers. Thomas Watson, IBM, 1943

Matematikens grundvalar och programmering av datorer

Introduktion till programmering

Datormetaforen. Från människa till dator Från dator till människa o.s.v.

Inledande programmering med C# (1DV402) Introduktion till programmering

Datorns utveckling. Bild av ENIAC

Charles Babbage och Ada Lovelaces datorer

Programmering i ett historiskt perspektiv. Växjö 16 november 2017 Mats Hansson

ENKEL Programmering 3

Kort beskrivning av Sveriges första dator BESK

Lars-Henrik Eriksson

Datorn föds.

Datorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)

Datorhistoria och datorn i samhällsutvecklingen. Moment i DD1390 Programsammanhållande kurs i datateknik

F2 Datarepresentation talbaser, dataformat och teckenkodning EDAA05 Datorer i system! Roger Henriksson!

Datorhistoria och datorn i samhällsutvecklingen. Moment i DD1390 Programsammanhållande kurs i datateknik

F1 Introduktion och teknikhistoria

Kursupplägg. Examination. Föreläsning 1: Intro till kursen och. Kursmaterial. programmering. Kursboken: Programmera med a multimedia approach

Programmering för alla!

F1 Introduktion och ingenjörsrollen EDAA05 Datorer i system! Roger Henriksson!

Teknikutveckling. Bakomliggande orsaker och historik. Varför teknik? Vad driver fram teknik?

Du kan även lyssna på sidorna i läroboken: Teknik direkt s Lyssna gör du på inläsningstjänst.

F1 Introduktion och ingenjörsrollen

Digital- och datorteknik

Programmering för alla!

Moment 2 Digital elektronik. Föreläsning Inbyggda system, introduktion

IT för personligt arbete F5

Föreläsning 1: Intro till kursen och programmering

Föreläsning 1: Intro till kursen och programmering

Inledning. Vad är ett datorprogram, egentligen? Olika språk. Problemlösning och algoritmer. 1DV433 Strukturerad programmering med C Mats Loock

Jacquards vävstol, 1801

Datorteknik. Föreläsning 7 Historia och framtid. Institutionen för elektro- och informationsteknologi, LTH

Utvecklingen från en 8 bitars till en 16 bitars mikroprocessor

Pedagogisk planering aritmetik (räkning)

Har du inte räknat färdigt än? Vad är matematik? Var och hur används matematik? Vad är matematikkunnande? Varför ska vi lära oss matematik?

Grunderna i stegkodsprogrammering

F5 Introduktion till digitalteknik

Algoritmer i Treviso-aritmetiken.

Teknikhistoria: Den första programmeraren

Maskinen som revolutionerade världen

Datorsystemteknik DVG A03 Föreläsning 3

HF0010. Introduktionskurs i datateknik 1,5 hp

IT-GUIDE Version 1.0 Författare: Juha Söderqvist

Datorsystemteknik DAV A14 Föreläsning 1

F2 Binära tal EDA070 Datorer och datoranvändning

CDC en jämförelse mellan superskalära processorer. EDT621 Campus Helsingborg av: Marcus Karlsson IDA

System S. Datorarkitektur - en inledning. Organisation av datorsystem: olika abstraktionsnivåer. den mest abstrakta synen på systemet

DOP-matematik Copyright Tord Persson Övning Bråkräkning. Matematik 1. Uppgift nr 14 Addera 9. Uppgift nr 15 Addera 3. Uppgift nr 16 Subtrahera

Datorarkitektur. Informationsteknologi sommarkurs 5p, Agenda. Slideset 3

Utmanande uppgifter som utvecklar. Per Berggren och Maria Lindroth

3-5 Miniräknaren Namn:

ARBETSPLAN MATEMATIK

6. Ge korta beskrivningar av följande begrepp a) texteditor b) kompilator c) länkare d) interpretator e) korskompilator f) formatterare ( pretty-print

'HOWHQWDPHQ 6\VWHPNRQVWUXNWLRQ

MIKRODATORTEKNIK 2012 INNEHÅLLSFÖRTECKNING

Kursplan för Matematik

0.1. INTRODUKTION Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

Introduktion till programmering D0009E. Föreläsning 1: Programmets väg

SIMD i Intel s P5- baserade Pentium MMX

Digital- och datorteknik

Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler

Extramaterial till Matematik Y

IE1204 Digital Design

Digitalitet. Kontinuerlig. Direkt proportionerlig mot källan. Ex. sprittermometer. Elektrisk signal som representerar ljud.

Utvidgad aritmetik. AU

Tenta i Digitalteknik

Parallellism i CDC 7600, pipelinens ursprung

Introduktionskurs i Datateknik

Mikroprocessorns historia Thomas Wirén Mälardalens högskola, IDt

Digital- och datorteknik

Datorprogram, algoritmer och Turing-maskiner

Per Holm Lågnivåprogrammering 2014/15 24 / 177. int och double = = 2, 147, 483, 647

Digital- och datorteknik

Lgr 11 matriser i Favorit matematik 4 6

En Von Neumann-arkitektur ( Von Neumann-principen i föreläsning 1) innebär:

F5 Introduktion till digitalteknik

ÖH kod. ( en variant av koden används i dag till butikernas streck-kod ) William Sandqvist

Datorsystemteknik DAV A14 Föreläsning 1

Digitalteknik EIT020. Lecture 15: Design av digitala kretsar

2-14 Binära talsystemet-fördjupning Namn:

Datastrukturer och algoritmer

Datormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden

F2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen

Digital- och datorteknik

Suomen Automaatioseura ry UTV 1/1 Finlands Automationssällskap rf Finnish Society of Automation

Manual. till. Cantor Madison Medri

Datoraritmetik. Binär addition papper och penna metod. Binär subtraktion papper och penna metod. Binär multiplikation papper och penna metod

måndag, 2010 oktober 11

PROGRAMMERING. Ämnets syfte. Kurser i ämnet

DEC Alpha instruktions Arkitektur

Minnesisolering för virtuella maskiner en hypervisorstudie

Olika sätt att lösa ekvationer

KURSBESKRIVNING - MATEMATIK

Målkriterier Beskrivning Exempel Eleven kan tolka elevnära information med matematiskt innehåll.

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

Transkript:

Datorsystem Från abakus till Z3

Datorsystem Från kursplanen Moment 3, Datorsystem 3hp I detta moment ges en introduktion till datorsystem och dess uppbyggnad. Minneshantering, vad en CPU är och gör samt en introduktion till operativsystem ingår. Dessutom ingår en översikt över datorns historia. Lärmål beskriva hur ett operativsystem fungerar på schematisk nivå tillämpa kunskaper om CPU för att kunna förklara hur högnivåspråk realiseras på lägre nivå i mindre grupp designa och implementera testprotokoll i syfte att besvara en given frågeställning samt skriftligt dokumentera arbetet känna till hur datorers minneshierarki kan se ut och att detta påverkar programs prestanda

Datorsystem 1 Datorns historia Lyfta på locket

The early days. Människan har i alla tider använt olika typer av kognitiva verktyg Tidiga exempel är räknepinnar och senare kulramar Kulramar (eller abakus) är kända från ca 2500 fkr i en eller annan form De tidigaste versionerna bestod av gropar i ett bräde mellan vilka man flyttade bönor Romarna använde småsten - calculi

The early days. Idén med kulramar, räknepinnar, knutsnören etc är att ett objekt har mer eller mindre en direkt motsvarighet i tex en kula Med olika talbassystem hölls antalet kulor (etc) nere Under medeltiden (ca 1500 ekr) växte ett konkurerande system fram där siffror och abstrakt symbolmanipulation ersatte det konkreta räknandet

John Napier Även om den nya metoden att räkna (aritmetik) var kraftfull, behövdes hjälpmedel för att utföra komplicerade beräkningar, speciellt multiplikationer 1617 presenterade Johan Napier sitt system med kluriga stavar som tillsammans reducerade problemet med att multiplicera tal till addition dividera tal till subtraktion Bilden nedan visar 46785399 * 7 = 327497793

Edmund Gunter Strax efter Napiers räknepinnar gjort succe presenterade Edmund Gunter räknestickan (ca 1620) Räknestickan bygger även den på Napier s logaritmer, dvs att multiplikation av två tal kan ses som addition av deras logaritmer Räknestickan kom att leva kvar för personlig räkning ända fram tills miniräknaren gjorde entré i början på 1970-talet

Blaise Pascal 1642 konstruerade den 19 åriga Blaise Pascal en maskin som kunde addera och subtrahera tal Ca 50 maskiner byggdes, men var för dyra för att vara annat än leksaker för de riktigt rika Programmeringsspråket Pascal är uppkallat efter honom

Charles Babbage 1822 presenterar Charles Babbage en idé om att automatisera beräkningarna av olika typer av matematiska tabeller Anledningen var att de som utförde beräkningarna (the computers) gjorde för många slarvfel Babbages lösning på problemet byggde på mekanik vilket gjorde att det var svårt att bygga maskinerna i praktiken De var helt enkelt för komplexa och krävde många gånger större precision i tillverkningsprocesser än vad som var tillgängligt i mitten på 1800-talet

Charles Babbage Babbages maskiner var emellertid mycket nyskapande de hade olika minne för data och program maskinens program bestod av olika operationer beräkningarna kunde göra villkorliga hopp maskinen hade en separat del för att hantera in- och utdata Babbages sista projekt the analythical engine hade, om den blivit färdig, föregått andra datorer med ca 100 år och blivit den första Turingkompletta datorn

Ada Lovelace En av de få som förstod Babbages visioner var matematikern Ada Lovelace som konstruerade ett program till the analythical engine för att beräkna Bernoulli tal Ada Lovelace anses därför vara den första programmeraren Programmeringsspråket Ada är uppkallat efter henne

Alan Turing 1936 skapade matematikern Allan Turing en abstrakt beräkningsmaskin som fick namnet Turingmaskinen Hans tanke var att använda den som en formalism med vilken man kunde bevisa saker kring vad som var möjligt att beräkna Turings arbete utgör i mångt och mycket grunden för teoretisk datalogi En Turingmaskin har ett minne i form av en pappersremsa på vilken den kan skriva och läsa tecken Turingmaskinen programmeras genom att vi definierar tillstånd som maskinen kan ha samt villkoren för att byta tillstånd

Konrad Zuse Man kan bevisa att Turingmaskinen kan användas för att lösa alla algoritmer och man säger att maskiner som har motsvarande beräkningskraft är Turing kompletta Den äldsta byggda datorn som bevisats vara Turing komplett är Z3 som konstruerades av Konrad Zuse och stod färdig 1941 Z3 användes för att beräkna vibrationer i vingarna hos flygplan Programmet sparades på en extern remsa och maskinen var därför helt generell

John Von Neumann John von Neumann utvecklade 1945 tillsammans med Presper Eckert och John Mauchly en arkitektur för vilka delar som behövs i en dator och de olika delarna skall vara kopplade Det nya med von Neumann arkitekturen var att samma arbetsminne rymmer både data och program Även Turing publicerade liknande tankar men var på grund av sekretess från sin tid på Bletchley Park förhindrad att jobba vidare i frågan

Kolossernas tid Under 1950 och 1960-talen fanns relativt få datorer men de som fanns var desto större I Stockholm byggdes Binär Automatisk Relä Kalkylator (BARK) 1950 32 bitar Add 150 ms, mul 250 ms 50 register 5000 telefonreläer Binär Elektronisk Sekvens Kalkylator (BESK) 1953 40 bitar Add 56 µs, mul 350 µs 512 ords minne 2400 radiorör, 400 germaniumdioder

IBM International Business Machines grundades 1896 av Herman Holerith Företaget tillverkade initialt hålstansningsmaskiner för hålkort Under 1950-talet kom IBM att allt mer dominera den framväxande datorbranschen IBM 700 serien baserades på vakumrörsteknik ca 10 kb arbetsminne klockfrekvens 43 khz IBM 7000 serien baserades på transistorteknik ca 160 kb arbetsminne klockfrekvens 460 khz

IBM Under 1960 och 1970-talet lanseras IBMs 360 och 370 serier och IBMs dominans på marknaden blev i princip total Med IBM 360 kom nyheter som 8 bitars byte 32 bitars ord 2 komplement aritmetik mikrokodade CPUs

Datorerna blir mindre Utvecklingen av halvledarteknik under 1970-talet gör att datorerna kan göras mindre Under 1980-talet lanseras en rad olika mikrodatorer och persondatorer

Moore s lag 1965 noterade Gordon Moore att antalet transistorer som kan placeras på en IC-krets fördubblades vartannat år Detta kom att kallas Moore s lag och den gäller än i dag (med mindre justeringar) Moore s har direkta följder för beräkningskraften på CPU s och andra kretsar Moore s lag gäller också (mer eller mindre) för hårddiskkapacitet, antal pixels i digitalkameror etc.