rekenaars en programmering · • python : objekte • python en die raspberry pi se gpio ....

Post on 19-Jul-2020

27 Views

Category:

Documents

0 Downloads

Preview:

Click to see full reader

TRANSCRIPT

REKENAARS EN PROGRAMMERING

Francois van Deventer 2016

• Rekenaar Kursus 1 • Rekenaar HW 2 • Bedryfstelsels 3 • Programmeertale 4 • Huiswerk 5 • Rekenaargebruike 6

Agenda

Bedryfstelsel

Rekenaar HW

Uitvoer Invoer

Wat is ’n moderne rekenaar?

SVE (CPU)

Geheue

Hierdie is instruksies Herhaal Lus Doen X Doen Y Z= X + Y Druk X,Y, Z End Herhaal Lus

Hierdie rekenaarkursus • Geskiedenis van rekenaars • Rekenaar Bedryfstelsels • Vloeidiagramme • Die hoof boublokke van programeertale • Die Raspberry Pi – krediet-kaart-grote-rekenaar • Jou eerste program in Python • Verskeie huiswerkopdragte sal gedoen moet word • Ontleding van bestaande programme • IDE’s en Ontfouters • Python : Invoer & Uitvoer • Python : Voorwaardes & Lusse • Python : Lyste & Woordeboeke & Stringe • Python : Lêers • Python : GUI Programmering • Python : Objekte • Python en die Raspberry Pi se GPIO

Bedryfstelsel

Rekenaar HW

Uitvoer Invoer

Kom ons fokus in op die Rekenaar HW

SVE (CPU)

Geheue

Hierdie is instruksies Herhaal Lus Doen X Doen Y Z= X + Y Druk X,Y, Z End Herhaal Lus

Generasie Beskrywing Voorbeelde

0de

<1600 Meganies (Berekenings vir handelaars, son, maan, planete se bane voorspel)

Abakus, Antikythera

1ste

1600 Sompomp: Optel, aftrek en maal en deel deur herhaalde optel/aftrek (Maganies)

Pascaline Babbage Diffirensiasie engine & Analitiese Engine

2de

1940 Vakuum buise (Atoombomberekeninge WO II)

UNIVAC120, ENIAC, IBM 701, IBM 702

3de

1960

Hooframe Minirekenaars (Transistors)

IBM 7090, IBM 7080, IBM System/360, BUNCH, PDP-11

4de

1970 Geintegreerde stroombane Intel 4004 , Intel 8080, Intel 8088, Intel 80386,

x86-64, ARMv8-A, SPARC

5de 2010 Internet van Dinge Raspberry Pi, Arduino, Intel Edison

Ab

aku

s /

Telr

aam

0de

<1600

Handelaars en smede het die Abakus gebruik om te kan optel en aftrek. Dit is reeds 300 vC gebruik. Dit word vandag not gebruik in Oos-Asie.

Bab

bag

e D

iffe

ren

sias

ie e

ngi

ne

2

1ste

1800

Charles Babbage ontwerp in 1849 met die doel om wiskunige opkyk tafels te bereken. Kon slegs optel en aftrek. Masjien is eers 1985-2002 gebou. Weeg 5 ton en 8000 komponente (Eerste weergawe 25,000). Jy draai die wiel aan die linkerkant en die resultaat word aan die regterkant gedruk.

2de

1940

Die ENIAC was die eerste elektroniese rekenaar wat in die VSA (Universiteit van Pensalvanie) gebou is. Die program van hierdie rekenaar is geskryf deur drade aan verskillende dele te koppel. Kon 5000 optel/ aftrek somme doen per sekonde. Kon ook maal, deel en vierkants-wortels uitwerk. Aanvanklik ontwikkel vir die Amerikaanse leer ballistiese berekeninge, maar die eerste wiskundige berekeninge wat dit gedoen het was vir die ontwikkeling van Waterstofbomme.

ENIA

C –

Ele

ctro

nic

Nu

me

rica

l In

tegr

ato

r an

d C

om

pu

ter

Dit het weke gevat om ‘n program te skryf en in hierdie rekenaar in te programmeer. Geheue slegs 80 grepe ; 30 Ton geweeg ; 18,000 vakuum buise en 1,500 rele’s en honderde duisende weerstande en capasitors. Grote: 2.6 m by 0.9 m by 26 m

IBM

70

80

3de

1960

IBM 7080 was ‘n transistor rekenaar. Opvolger van die IBM 705.

PD

P-1

1

3de

1960

PDP-11 was ‘n 16 bis mini rekenaar van Digital Equipment Corporation. Die PDP reeks rekenaars is tot in die 1990’s vervaardig. 600,000 van hierdie rekenaars is verkoop.

Inte

l 40

04

--

4 B

IS r

eken

aar

4de

1970

Z80

/81

/82

SV

E --

8 B

IS r

eken

aar 4de

1980

16-128 Kb Hoofgeheue (RAM) Kasset Sekondere geheue (Hardeskyf) Bedryfstelsel : Sinclair BASIC 1982-1992 vervaardig

Inte

l 80

88

--

8 B

IS r

eken

aar

650 Kb Hoofgeheue (RAM) 20 Mb Sekondere geheue (Hardeskyf) Floppie aandrywer Koste: R20,000 van 1988 se geldwaarde

4de

1980

Intel 80386 -- 16 BIS rekenaar

32 Mb Hoofgeheue (RAM) 1 Gb Sekondere geheue (Hardeskyf) Stiffie aandrywer 1.44 Mb

4de

1990

X86-64 8 Gb Hoofgeheue (RAM) 1 Tb Sekondere geheue (Hardeskyf)

4de

2010

+-R10,000 in 2010 se geldwaarde

Binêre voorstelling van getalle

1011 = 1*23 + 0*22 + 1*21 + 1*20

= 8 + 0 + 2 + 1 = 11 1001 = 1*23 + 0*22 + 0*21 + 1*20

= 8 + 0 + 0 + 1 = 9

Binêre rekenkunde en Logika

ASC

II t

abe

l

Python – HELLO mbv karakter waardes

print (chr(72)) print (chr(69)) print (chr(76)) print (chr(76)) print (chr(79))

Kilo, Mega, Giga, Tera

Greep (byte) = 8 bisse (bits) Een van 256 soorte karakters Kilo greep (byte) = 1024 grepe (bytes) Mega greep (byte) = 1024 Kilo grepe = 10242 grepe (bytes) Giga greep (byte) = 1024 Mega grepe = 10243 = 1,073,741,824 grepe Tera greep (byte) = 1024 Giga grepe = 10244 = 1,099,511,627,776 grepe …

Internet van Dinge (IoT)

Die Internet van Dinge is die netwerk van fisiese dinge wat elektronika, programme, sensore en netwerkverbindings bevat. Dit maak dit moontlik vir hierdie dinge om data uit te ruil en te versamel. Hierdie finomeen skep nuwe geleenthede vir direkte integrasie tussen die fisiese- en die rekenaarwêrelde wat tot meer produktiwiteit, akuraatheid en ekonomiese vooruitgang tot gevolg gaan hê... Daar word verwag dat die Internet van Dinge uit 50 biljoen objekte gaan bestaan teen 2020.

(Wikipedia)

5de

2012

Eerste prototipe van die Raspberry Pi 5de

2012

Bedryfstelsel

Rekenaar

Uitvoer Invoer

Onthou waar uit ‘n rekenaar bestaan

SVE (CPU)

Geheue

Hierdie is instruksies Herhaal Lus Doen X Doen Y Z= X + Y Druk X,Y, Z End Herhaal Lus

Raspberry Pi 2 5de

2012

Raspberry Pi 2

SVE + Geheue

Ethernet Internet

4 x USB Sleutelbord

WiFi Drukker

Muis …

Skerm / TV

(HDMI)

Krag 5V

Mic

ro S

D

Skerm / TV

(RCA)

Kam

era

Sker

m

Rapsberry Pi Zero

Rapsberry Pi Zero

SVE + Geheue

Sleutelbord WiFi

Drukker Muis

Skerm / TV

(HDMI)

Krag 5V

Mic

ro

SD

Bedryfstelsel

Rekenaar HW

Uitvoer Invoer

Kom ons fokus in op die Bedryfstelsel

SVE (CPU)

Geheue

Hierdie is instruksies Herhaal Lus Doen X Doen Y Z= X + Y Druk X,Y, Z End Herhaal Lus

Wat is die bedryfstelsel Dit is ‘n spesiale program wat dit moontlik maak om die rekenaar hardeware te kan beheer deur gebruik te maak van ‘n programeertaal wat meer menslik vriendelik is. Voorbeelde van bedryfstelsels sluit in: • Unix, Linux, Android • Windows XP, Windows 10 • OS X, Mac OS • Android Die Toepassingsprogramme soos OpenOffice, MS Word, Excel, Paint, Speletjies hardloop bo-op die bedryfstelsel.

Un

ix /

Lin

ux

/ O

S X

Bedryfstelsel

Rekenaar HW

Uitvoer Invoer

Kom ons fokus in op die Program

SVE (CPU)

Geheue

Hierdie is instruksies Herhaal Lus Doen X Doen Y Z= X + Y Druk X,Y, Z End Herhaal Lus

Wat is ‘n programeertaal Dit is ‘n lysie eksakte bevele wat maklik verstaanbaar is vir mense, maar wat vertaal kan word in rekenaarverstaanbare taal. Programeertale sluit in: • Python • C • Pascal • Java • Fortran

• Perl • Cobol • 4gl • C++ • Lisp

• C# • PHP • Java Script • Prolog • Assembler

Watter tipe taal is Python ?

Vertaal Vertaal Vertaald Interpreteer

Uitdruklikvertaal na masjien kode

Uitdruklikvertaal na pseudo masjien kode

Indirek vertaal na pseudo masjien kode

Suiwer geinterpreteer

Lusse

Basiese Vloeidiagram simbole en definisies

Begin of einde van vloeidiagram.

Proses / Taak

Proses of taak

Splyt van ‘n proses of die saamvoeg van prosesse.

Ander Bladsy Verbinding

Verbind een bladsy van ‘n vloeidiagram met ‘n ander.

Verbinding

Verbind een vloei diagram met ‘n ander.

Besluit

‘n Besluit in ‘n proses of vloei.

Invoer / Uitvoer

Data: Invoer na en uitvoer vanaf ‘n proses.

Dokument

Dokument of verslag.

Invoer

Kry inligting per hand vanaf die gebruiker.

Verbinder tussen

prosesse

Klaar ?

Proses / Taak

Proses / Taak

NEE JA

Hello spesifieke persoon in Vloeidiagram

Skryf “Hello. ” + NAAM + “Jy het ‘n

mooi Naam”

Vra “Hoe oud is jy?” (OUD)

Is OUD > 60

Vra “Wat is jou naam?” (NAAM)

JA

NEE

Skryf “Hello. ” + NAAM + “U het ‘n

mooi Naam”

Hello Wêreld : C++

/*The Hello World App */ #include <iostream> using namespace std; int main() { cout << "Hello, world!" << endl; return 0; }

Hello Wêreld : C

/* Hello World program */ #include<stdio.h> main() { printf("Hello World"); }

Hello Wêreld : java

/** * Die Hello Wereld toepassing in Java */ class HelloWorld { public static void main(String[] args) { System.out.println("Hello World!"); } }

Hello Wêreld : Python

# Die Hello Wereld toepassing in Python print (“Hello World”)

Hello Wêreld : Pascal

(* Die Hello Wereld toepassing in Pascal *) program Hello; begin writeln ('Hello, world.') end.

Huiswerk 1

Skryf ‘n vloei diagram wat:

• Getal A van gebruiker kry

• Getal B vanaf gebruiker kry

• Tel die twee getalle bymekaar

• Skryf die uitvoer op die skerm

Huiswerk 2 Skryf ‘n vloeidiagram wat die proses om koffie te maak verduidelik: • Maak ketel oop • Is daar genoeg water • Kry nog water as nodig • Sit ketel aan • Sit ketel af • Haal melk uit die yskas • Kry suiker • Sit suiker/melk in beker • Roer alles • ens

RPi en Rekenaar gebruike

GK

Bet

-El s

e o

rrel

https://www.youtube.com/watch?v=gPvJODIR7Ik RP

i met

kam

era

40

km

Ro

bo

tika

bo

uer

https://www.youtube.com/watch?v=DQ5Elbvvr1M https://www.youtube.com/watch?v=OYqBxEAtXZA

Ver

keer

slig

https://www.youtube.com/watch?v=O_ocR3phFcg

https://www.youtube.com/watch?v=bluewEsWr4I Blo

m N

atm

aker

Nog meer inligting…

Gaan kyk mooi video’s met inligting oor rekenaars by : http://www.popularmechanics.com/technology/g2248/11-calculators-show-how-far-computing-has-come/

VRAE?

top related