Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
lehrkraefte:blc:informatik:efi-2023:exam4 [2024/04/30 08:43] Ivo Blöchliger [Freifächer] |
lehrkraefte:blc:informatik:efi-2023:exam4 [2024/04/30 08:58] (current) Ivo Blöchliger [Assembler] |
||
---|---|---|---|
Line 53: | Line 53: | ||
</ | </ | ||
+ | |||
+ | * Erklären Sie Sinn und Zweck der folgenden Registern: | ||
+ | * IP (Instruction Pointer), wird oft auf PC (Programm Counter) genannt. | ||
+ | * SP (Stack Pointer) | ||
+ | * allgemeine Verwendung | ||
+ | * speziell im Zusammenhang mit den Instruktionen '' | ||
+ | * Bei jeder Berechnung werden die Flags Z (Zero) und C (Carry) gesetzt oder gelöscht, je nach Resultat der Berechnung. | ||
+ | * Welche «Befehlsfamilie» nutzt diese Flags und welchem Programmierbefehl entspricht das am ehesten in Python? | ||
+ | * Was genau macht der Befehl '' | ||
====== Unicode ====== | ====== Unicode ====== | ||
Line 94: | Line 103: | ||
</ | </ | ||
- | Was liefert folgende Abfrage? Kommentieren Sie die einzelnen Teil der Abfrage. | + | * Was liefert folgende Abfrage? Kommentieren Sie die einzelnen Teil der Abfrage. |
<code sql> | <code sql> | ||
SELECT score.score, | SELECT score.score, | ||
</ | </ | ||
- | Geben Sie eine Anfrage an, die alle Scores mit Zeitstempel von '' | + | * Geben Sie eine Anfrage an, die alle Scores mit Zeitstempel von '' |
+ | |||
+ | <hidden Dump der Datenbank> | ||
+ | Kann mit '' | ||
+ | <code sql highscore.dump> | ||
+ | PRAGMA foreign_keys=OFF; | ||
+ | BEGIN TRANSACTION; | ||
+ | CREATE TABLE user (id INTEGER PRIMARY KEY AUTOINCREMENT, | ||
+ | INSERT INTO user VALUES(1,' | ||
+ | INSERT INTO user VALUES(2,' | ||
+ | INSERT INTO user VALUES(3,' | ||
+ | INSERT INTO user VALUES(4,' | ||
+ | CREATE TABLE score (id INTEGER PRIMARY KEY AUTOINCREMENT, | ||
+ | userid INT NOT NULL, | ||
+ | zeit TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP, | ||
+ | score INT, | ||
+ | FOREIGN KEY(userid) REFERENCES USER(id)); | ||
+ | INSERT INTO score VALUES(1, | ||
+ | INSERT INTO score VALUES(2, | ||
+ | INSERT INTO score VALUES(3, | ||
+ | INSERT INTO score VALUES(4, | ||
+ | INSERT INTO score VALUES(5, | ||
+ | INSERT INTO score VALUES(6, | ||
+ | DELETE FROM sqlite_sequence; | ||
+ | INSERT INTO sqlite_sequence VALUES(' | ||
+ | INSERT INTO sqlite_sequence VALUES(' | ||
+ | COMMIT; | ||
+ | </ | ||
+ | </ | ||
===== Freifächer ===== | ===== Freifächer ===== | ||
Line 142: | Line 179: | ||
</ | </ | ||
- | Schreiben Sie eine Abfrage, die die Namen aller Freifächer auflistet, die von '' | + | <hidden Dump der Datenbank> |
+ | Kann mit '' | ||
+ | <code sql freifach.dump> | ||
+ | PRAGMA foreign_keys=OFF; | ||
+ | BEGIN TRANSACTION; | ||
+ | CREATE TABLE student (id INTEGER PRIMARY KEY AUTOINCREMENT, | ||
+ | name TEXT NOT NULL); | ||
+ | INSERT INTO student VALUES(1,'vreni' | ||
+ | INSERT INTO student VALUES(2,' | ||
+ | INSERT INTO student VALUES(3,' | ||
+ | INSERT INTO student VALUES(4,'margarethe' | ||
+ | CREATE TABLE freifach (id INTEGER PRIMARY KEY AUTOINCREMENT, | ||
+ | name TEXT UNIQUE NOT NULL); | ||
+ | INSERT INTO freifach VALUES(1,' | ||
+ | INSERT INTO freifach VALUES(2,' | ||
+ | INSERT INTO freifach VALUES(3,' | ||
+ | CREATE TABLE wahl (id INTEGER PRIMARY KEY AUTOINCREMENT, | ||
+ | freifachid INTEGER NOT NULL, | ||
+ | studentid INTEGER NOT NULL, | ||
+ | FOREIGN KEY(freifachid) REFERENCES freifach(id), | ||
+ | FOREIGN KEY(studentid) REFERENCES student(id)); | ||
+ | INSERT INTO wahl VALUES(1, | ||
+ | INSERT INTO wahl VALUES(2, | ||
+ | INSERT INTO wahl VALUES(3, | ||
+ | INSERT INTO wahl VALUES(4, | ||
+ | INSERT INTO wahl VALUES(5, | ||
+ | INSERT INTO wahl VALUES(6, | ||
+ | DELETE FROM sqlite_sequence; | ||
+ | INSERT INTO sqlite_sequence VALUES(' | ||
+ | INSERT INTO sqlite_sequence VALUES(' | ||
+ | INSERT INTO sqlite_sequence VALUES(' | ||
+ | COMMIT; | ||
+ | </ | ||
+ | </ | ||
- | Erklären Sie folgende Anfrage und deren Ausgabe: | + | * Erklären Sie folgende Anfrage und deren Ausgabe: |
<code txt> | <code txt> | ||
sqlite> select freifach.name, | sqlite> select freifach.name, | ||
Line 154: | Line 223: | ||
sql | sql | ||
</ | </ | ||
+ | |||
+ | * Schreiben Sie eine Abfrage, die die Namen aller Freifächer auflistet, die von '' | ||
+ | * Erklären Sie, warum eine dritte Tabelle '' | ||
+ | |||
+ |