EPR Klausur Stoff

EPR Klausur Stoff

EPR Klausur Stoff

Ionatan Feher

Ionatan Feher

Set of flashcards Details

Flashcards 60
Language Deutsch
Category Computer Science
Level University
Created / Updated 20.07.2020 / 25.05.2023
Weblink
https://card2brain.ch/box/20200720_epr_klausur_stoff
Embed
<iframe src="https://card2brain.ch/box/20200720_epr_klausur_stoff/embed" width="780" height="150" scrolling="no" frameborder="0"></iframe>

Was sind Schlüsselwörter in der Programmiersprache?

VAR, END_VAR, IF, THEN, END_IF = Schlüsselwörter 

Was ist ein Compiler und was macht er?

Compiler = Übersetzer des Quell-Codes in einer Binärprogramm

Wie erstellt man Kommentare und für was sind die gut?

//          Einzeilige Kommentare
(*....*)   Mehrzeillige Kommentare

Um grössere Programme besser zu erklären

Was ist eine IDE?

Die integrierte Entwicklungsumgebung Integrated Development Environ-ment

Wie funktioniert die Übersetzung des Quellcodes in Maschinencode. Erklären Sie stichwort-artig.

-Übersetzung der Präprozessor-Anweisungen
- Compilieren
- Linken
- Assemblieren

Warum ist es wichtig, Konstanten, Variablen, Funktionen – generell Quellcode Anweisungen – mit sinnvollen Namen zu versehen?

Erhöht die Lesbarkeit des Codes!

Zählen Sie vier verschiedene Datentypen auf.

Boolean
Integer (SINT, USINT, DINT, UDINT, LINT, ULINT um in CoDeSys zu sprechen)
Real (Float)
String (bestehend aus Char)

Was ist speziell am Datentyp String. Erklären Sie diesen Datentyp anhand eines Beispiels.

besteht aus einer Ansammlung (array) von Zeichen «Hello world!»

Mit welcher Funktion beginnt ein Programm? Erläutern Sie kurz.

Ein Programm startet in der Regel im main(). Dies ist die sogenannte Einsprungs-Adresse,

Deklarieren Sie eine 16Bit Integer Variable und was geschieht im Computersystem dabei

a.)
VAR
zahlInt16Bit: INT;
END_VAR
b.)
Zuteilung eines Speicherbereichs, Adresse im RAM

Zählen Sie die gelernten Operatoren auf.

+, -, *, /, MOD
Beispiel a:=a+1;

Welche Integer kennst du?

INT 16 Bit: -32 768 bis 32 767, bei UINT 0 bis 65 535
SINT short Int: 8 Bit -128 bis +127 bei USINT 0-255
DINT 32 Bit -2^31 bis 2^31 .1
LINT 64 Bit

Welche Kommazahlenvariablen kennst du?

REAL und LREAL, das Komma wird als Punkt dargestellt 3.45

Erstellen Sie eine Variable und initialisieren Sie diese mit eine Zahl.

VAR
zahl : INT := 3;
END_VAR

Nenne mir die Codesys Standard Regeln zur Namensgebung

-Grosskleinschreibung ist für Codesys gleich: VAR1 = var1
-Variablen mit mehreren hintereinanderfolgenden Unterstrichen werden nicht erlaubt.
-die Namenslänge ist unlimitiert.
-der Name darf kein Schlüsselwort sein

Was sind Inkrement und Dekrement Operationen?

Inkrement = erhöhen = a := a + 1;

Dekrement = verringern = a := a - 1;

Welche Rechenoperationen kennen Sie?

+, -, *, /, und MOD

MOD ist der Rest aus einer Division
a := c MOD b; // 5 / 2 ist 2 Rest 1, a ist 1

Werden Rechenoberationen auf Int angewendent, werden Nachkommateile weggeschnitten

Wie funktioniert die UND Bitmanipulation?

Verknüpfung wird jede Bitstelle AND verknüpft

per AND Verknüpfung wird binär ausgerechnet. 1 und 1 = 1, deswegen ist 10 AND 7 = 2

1010 AND 0111 = 0010

Wie funktioniert die ODER Bitmanipulation?

Verknüpfung wird jede Bitstelle OR verknüpft

per OR Verknüpfung wird binär ausgerechnet. 1 oder 0 = 1, deswegen ist 10 OR 6 = 14

1010 OR 0110 = 1110

Wie funktioniert die exklusiv ODER Bitmanipulation?

XOR Verknüpfung wird 1 wenn der eine oder andere Bitwert 1 hat.

1010 XOR 0110 = 1100

Wie funktioniert die Negation einer Bitmanipulation?

bei Negation NOT wird jedes Bit umgekehrt

00001010 = 11110101

Was sind Bit-Verschiebungen?

Bits werden nach rechts oder links verschoben, Randbits fallen raus

SHL() und SHR()

b=5 //0101
c := SHL(b,1); // c ist 10 - 1010
d := SHR(b,1); // d ist 2 - 0010

Wie funktioniert die Typumwandlung?

i : INT := 5;
f : REAL := 2.345;

i := TO_INT(f); // i ist 2 von 2.345
f := TO_REAL(i); // f ist 2.0, da i vorher zu 2 wurde

Was verstehst du unter Verzweigungen?

Das Programmverhalten entsprechend der Bedingungen zu verändern

Wie baust du eine IF...THEN...ELSE Verzweigung auf?

IF condition1(wird als true gesehen, ohne Angabe) THEN number := 1;

ELSE (hier wird es als FALSE gesehen) number :=2;

END_IF

Welche logische Operationen kennst du in Verbindung mit IF?

NOT(), AND, OR, XOR
IF (switch1 OR switch2) and switch3 THEN

Wie erstellst du eine Byte Variable mit 8 Schalter und wie hantierst du damit?

VAR
switch1_8 : Byte;
END_VAR

switch1_8 := switch1_8 AND 2#11111011 // switch6 wird ausgeschaltet
switch1_8 := switch1_8 OR 2#00000010 // switch7 wird eingeschaltet
switch1_8 := switch1_8 XOR 2#11110000 // switches 1-4 werden inventiert
switch1_8 := NOT(switch1_8); // alle switches werden inventiert

Wie baut man eine CASE...OF Funktion auf?

CASE zustand OF
0:
output := 2#00000000;
zustand := 1;
1:
output := 2#00000011;
zustand := 2;
ELSE
zustand := 0;
END_CASE

Wie baust du eine WHILE Schleife auf?

i := 1;

WHILE i <= 5 DO
i := i + 1;
END_WHILE

Wie baust du eine FOR Schleife?

FOR i:=1 to 5 DO
END_FOR

FOR i:= 10 TO 0 BY -2 DO
END_FOR

Wie baust du eine REPEAT Schleife ein?

WHILE und FOR Kopfgesteuert, REPEAT ist Fussgesteuert, Abbruchbedingung nach Programmdurchlauf.

i := 1;
REPEAT
i := i + 1;
UNTIL i > 5
END_REPEAT

Was macht das Schlüsselwort EXIT in einer Schleife?

Jederzeit beendbar mit EXIT

REPEAT
IF b THEN
EXIT;
END_IF
i := i + 1;
UNTIL i > 5
END_REPEAT

Was verstehst du unter den Schlüsselwort CONTINUE?

ermöglich direkter Sprung zur Abbruchbedingung, ohne Schleife zu verlassen.

Was sind Felder (arrays) und für was brauchst du die?

wenn eine Vielzahl gleicher Werte für eine Aktion benötigt werden, eine Deklaration ist ausreichend

VAR
num : ARRAY [1..1000] OF REAL;
END_VAR

Wie baust du ein ARRAY in einer FOR Schleife?

average := 0;
FOR i:=1 TO 1000 DO
average := average + num[i];
END_FOR

Wie initialisierst du die Werte in einem Feld ARRAY?

VAR
raumtemp : ARRAY [1..5] OF REAL := [21.0,20.9, 20.2, 21.3, 20.9]
END_VAR

Was sind Vor- und Nachteile bei der Verwendung von Funktionen?

Vorteile: Probleme werden zu Teilproblemen, werden getrennt von Hauptprogrammen abgelegt

Nachteile: Kann schnell unübersichtlich werden,

Aus welchen Teilen besteht eine Funktion?

Bezeichner Namen, Bezeichner Parameter, Datentyp der Parameter, Datentyp des Rückgabewertes

Wie baust du eine Funktion?

FUNCTION addiere : INT

VAR_INPUT
summand1, summand2 : INT;
END_VAR

addiere := summand1 + summand2;

Normalprogramm:
summe := addiere(3,7);

Was ist die Programm Performance?

Schnelligkeit