Upload
others
View
26
Download
0
Embed Size (px)
Citation preview
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=4-DtD51WNr8 Au
tom
atis
asie
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/
Afrikaanse rekenaarterme
http://www.nomoreslave.com/afrikaans/afrikaanse-rekenaar-terme https://wiki.edubuntu.org/AfrikaansTranslators/WAITTwoordeboek https://af.wikipedia.org/wiki/Wikipedia:Rekenaarterme
VRAE?