Prozessortechnik
Prozessortechnik an der hftm
Prozessortechnik an der hftm
-
- 1 / 74
-
Cartes-fiches
Wie ist der Prozess des „Compilierens“, bzw. welche Schritte werden durchlaufen, wenn wir von „Compilieren“ sprechen?
Wenn vom Compilieren gesprochen wird, ist der Buildprozess mit allen zwischenschritten gemeint. Es "übersetzt" die, für uns verständliche, C sprache zu einer Ausführbaren Datei.
Zum Buildprozess gehören folgende Schritte
Preprozessor
Compiler
Assembler
Linker
In welchem Prozess würde ein Syntax Fehler erkannt werden?
Beim compilieren (Der compilier)
Was ist die Aufgabe vom Linker?
Führt alles zusammen und erstellt eine ausführbare datei
Welcher Prozess entfernt Kommentare?
preprozess
Welcher Prozess erstellt schlussendlich ein ausführbares File?
Linker
Welcher Vorteil hat es, wenn Verarbeitungen zur Compilierungszeit und nicht zur Laufzeit (runtime) durchgeführt werden?
Es benötigt keine Ressourcen während das Programm lädt / läuft.
Dies trägt massiv zur Geschwindigkeit des Programms bei und spart kosten.
Wie können Kommentare in den Sourcecode eingefügt werden?
Welche Datei erstellt der Preprozessor?
Welche Datei erstellt der Compiler?
Welche Datei erstellt der Assembler?
Welche Datei erstellt der Linker?
Was ist eine Variable?
Eine Variable ist ein Platzhalter für Werte, die sich [meist] ändern können. Variablen können im Sourcecode
festgelegte Werte - sogenannte Literals - zugewiesen werden. Die Werte könnten aber auch zur Laufzeit von
einer Benutzereingabe oder aus einer Verarbeitung/Berechnung kommen.
Literals
Um welches Literal handelt es sich?
420
int
Literals
Um welches Literal handelt es sich?
69L
long
I (lkleines L)
Literals
Um welches Literal handelt es sich?
3.14
double
Literals
Um welches Literal handelt es sich?
"Hello world"
String literal
Literals
Um welches Literal handelt es sich?
0x1F
int, represented in hex
Literals
Um welches Literal handelt es sich?
0b0101
int, represented in binary
Welche Variablennamen sind möglich?
Welche Variablennamen sind nicht möglich?
Wie viele bytes hat der folgende Datentyp?
Char
Wie viele bytes hat der folgende Datentyp?
Int
Wie viele Bytes hat der folgende Datentyp?
Float
Wie viele bytes hat der folgende Datentyp typischerweise?
Double
Wie viele bytes hat der folgende Datentyp typischerweise?
Long double
Wie wird eine Integer Variable nur deklariert, ohne initialisiert zu werden?
int variableNotInitialized;
Wie können drei Variablen gleichen Typs deklariert und zugleich initialisiert werden, ohne dass der
Datentyp wiederholt werden muss?
Wie sieht der Dezimale Wert 8 als Literal aus in den Typen
int, long, unsigned int, float, als octal, als
hex, als binary?
int: 8
long: 8L (oder 8l)
unsigned int: 8u (oder 8U)
float: 8.0f
octal: 10
hex: 0x8
0b1000
Wie wird auf eine char Variable das Zeichen j gesetzt?
char myCharVariable = 'j';
Bei welchem Datentyp ist als einziges die Grösse bekannt, aber unbekannt ob signed oder unsigned?
Welche Integer Datentypen haben mehr Platz (oder mindestens nicht weniger) als int?
Wie kann eine Boolean Variable seit C23 deklariert werden, so dass der Header stdbool.h nicht mehr
nötig ist?
bool myBooleanVariable = true;
Wenn eine unsigned integer Variable benötigt wird, die genau 32 Bit gross sein soll - und dies
Plattformunabhängig - wie kann diese Variable deklariert werden?
uint32_t my32BitVariable;
Beschreibe die generelle Funktionsweise von impliziter Type conversion.
Der Compiler castet [implizit] bei der Verarbeitung von mehreren Variablen in den jeweils
grössten Datentypen.So wird aus beispielsweise bei der Multiplikation eines Integers und eines Long Integers der
Integer in einen Long Integer gecastet.
Erkläre den modulo (modulus) Operator und gib an, was 13 modulo 5 ergibt.
Mit Modulo lässt sich der Rest (Remainder) einer Division ermitteln.
Beispiel: 13 % 5, Ergbnis: 3
Was bedeutet ein einzelnes Minus vor einer Variable?
-myVariable
Das ist der Unary Minus Operator. Das heisst das Resultat aus z.B. -myVariable wird invertiert
oder mit anderen Worten: Es wird mit *(-1) multipliziert.
Wenn myVariable den Wert 33 enthält, wird mit -myVariable der Wert -33. Wäre der Wert von
myVariable -5, so würde mit -myVariable der Wert 5.
Was geschieht mit einem Wert mathematisch betrachtet, wenn mit ihm die Bitwise Operation >> 2 durchgeführt wird?
Was ist das [boolesche] Egebnis aus 3 != 5?
myValue /= 33
was ist der unterschied zwischen signed und unsigned int?
Der Unterschied zwischen vorzeichenlosen int und signed int liegt in der Art und Weise, wie das höchste Bit, manchmal als "Vorzeichen" bezeichnet, interpretiert wird.