|
PrakSIS - Praktika-Studenten-Informations-System für das Praktikum "DV-Anwendungen in der Technik" |
|
| Informationen Praktikumsversuche Labore Kurse&Termine Anmeldung Neues Benutzerkonto | ||
|
Auswahlhinweise Nach Themen Nach Laboren |
Versuchsbeschreibung: | nicht angemeldet |
|
Versuch: "C-Verbindung mit Assembler (Linker)" im Labor "Prozeßrechentechnik" (G215)
Betriebssystem: Unix oder VxWorks
Aufgabenstellung
================
Schreiben Sie für VxWorks oder Unix ein C-Programm, das seine
Aufruf-Argumente (argv[i]) zentriert auf dem Bildschirm darstellt.
Verwenden Sie dabei ein getrennt übersetztes Assemblerprogramm, welches an
einer angegebenen Bildschirmkoordinate einen angegebenen Text darstellt:
putxy(zeile,spalte,string)
int zeile,spalte;
char *string;
"putxy" löscht den Bildschirm, wenn "string" ein Null-Pointer ist. Ansonsten
gibt "putxy" die Steuerzeichenfolge zur Cusorpositionierung "HOME" aus und
steuert dann den Cursor "zeile"-mal nach unten und "spalte"-mal nach rechts.
Danach wird der Nutztext, auf dessen Anfang der Pointer "string" zeigt,
ausgegeben.
Verwenden Sie lokale Variable, mit/ohne Schlüsselwort "register".
VxWorks: Wie kann das Programm anstelle mit argv[] parametrisiert werden?
VxWorks: Übersetzen Sie die Routinen einzeln und laden Sie sie einzeln.
Verfolgen Sie in beiden Fällen den Programmlauf im Debugger.
Betrachten und erklären Sie die Assemblerumsetzung des Compilers
(Assemblerlisting des C-Programms).
Kolloquium
==========
Erklären Sie die Parameter-Übergabe und Mechanismus der link/unlink -
Systematik bei Funktionsaufrufen des C-Compilers (Assembler-Listing des
C-Programms). Wie wirkt das Schlüsselwort "register"?
Vorbereitung
============
ESC-Folgen für Terminals:
Home: Clear: Cursor down: Cursor right:
VT52 (Atari) ESC H ESC J ESC B ESC C
VT100 (NCD) ESC [ 1 ; 1 H ESC [ J ESC [ B ESC [ C
Ampex 0x1F 0x1A 0x16 0x0C
| ||