5079
Kommentar:
|
1325
|
Gelöschter Text ist auf diese Art markiert. | Hinzugefügter Text ist auf diese Art markiert. |
Zeile 40: | Zeile 40: |
**29.10.2015** Ein kurzer Test: Schreiben Sie alle Adressierungsarten hin, um das dritte Element (34) im folgenden Array in das Register ``eax`` zu laden. :: data_items: .long 3, 67, 34, 12, 17, 0 1. movl _____________, %eax 2. movl ___________________ movl _____________, %eax 3. movl ___________________ movl _____________, %eax 4. movl ___________________ movl _____________, %eax WS2014/2015 =========== Abgabetermin ------------ Der Abgabetermin ist nun immer am Freitag Abend um 21 Uhr. Der Moodle-Kurs ist hier: https://moodle.hs-augsburg.de/course/view.php?id=2721 Tipps zum Arbeiten mit Linux ---------------------------- * Zum fundierten Einarbeiten in Linux empfehle ich die unter einer freien Lizenz erschienene Schulungsunterlage "Linux Essentials" vom `Linux Professional Institute <http://www.lpi.org>`_ (LPI): https://shop.linupfront.de/product/lxes/ Sie können dort das 264-seitige Handbuch ``lxes-de-manual-cc.pdf`` im PDF Format kostenlos herunterladen. Eine interessante Textsammlung zu verschiedenen UNIX-Themen wie Vi, Shell, Makefile, C und GDB bietet auch folgende Seite von Norman Matloff: http://heather.cs.ucdavis.edu/~matloff/unix.html Es lohnt sich, dort ein wenig zu stöbern! * Arbeiten Sie beim Programmieren NICHT als Root! Installieren Sie am besten das Paket "sudo" und fügen Sie in /etc/sudoers die Zeile :: stud ALL=(ALL:ALL) ALL hinzu. * Hinweis für das virtuelle Linux aus "Programmieren 3": Installieren Sie ein komfortableres Terminal-Programm, z.B. "terminator":: sudo apt-get install terminator Mit diesem Terminal-Emulator können Sie eine grössere Schrift einstellen und Sie können das Terminal-Fenster horizontal und vertikal teilen. Ausserdem haben Sie einen Scroll-Balken auf der rechten Seite. * Gewöhnen Sie sich an, **nur im Terminal-Fenster zu arbeiten**. Unsere häufigsten Kommandos sind: - Navigation im Filesystem (cd, ls) - Dateien löschen (rm) - Editieren von Dateien (vim, nano, pico) - Aufrufen von make, eventuell mit make Targets, z.B. "make clean" - gelegentliche Administrations-Aufgaben (sudo ...) - Installieren von Paketen * Ein Textbrowser ist praktisch, wenn man schnell einen Text lesen will. Das Standard-Werkzeug dafür ist ``less``, das man so anwendet:: less text.rst Man kann sich in ~/.bashrc einen Alias einrichten, z.B.:: alias m="less" Damit kann man dann etwas kürzer ``m text.rst`` schreiben. Auswahl eines Editors --------------------- * Ich empfehle `Vim <http://www.vim.org>`_! * Um sich in Vim einzuarbeiten, beginnen Sie am besten mit dem Programm ``vimtutor``. Geben Sie ``vimtutor`` [RETURN] auf der Kommandozeile ein und befolgen Sie die Anweisungen, die Sie danach am Bildschirm sehen. Schreiben von Textdateien ------------------------- Beispiele für Textdateien: reST Dokument, Assembler Quelltext, Makefile. * Gewöhnen Sie sich daran, den Text **nicht breiter als 80 Zeichen** zu schreiben. Ein wichtiger Grund dafür ist, dass Braille Blindenschriftzeilen nicht mehr als 80 Zeichen darstellen können. Breite Bildschirme verleiten einen leider gerne, sehr lange Zeilen mit 100 bis 150 Zeichen zu schreiben. Die meisten Editoren können so eingestellt werden, dass Sie automatisch längere Zeilen umbrechen. In Vim verwende ich z.B. in ``~/.vimrc`` das Kommando set colorcolumn=80 das mir in Spalte 80 einen vertikalen roten Balken zeigt, über den man nicht schreiben sollte. |
Aktuelle Hinweise zur "Systemnahen Programmierung"
In diesem Wiki sammle ich Notizen, die sich im Praktikum ergeben haben. Gerne dürfen Sie auch Einträge hinzufügen. Melden Sie sich dazu als "WikiGast" mit Passwort "student" an.
Bei Fragen zur Veranstaltung und zum Praktikum schicken Sie mir bitte eine E-mail an <Hubert.Hoegl@hs-augsburg.de>.
Link zur Homepage der Veranstaltung:
https://hhoegl.informatik.hs-augsburg.de/hhweb/sysprog/
Inhalt
1 WS2015/2016
Abgabeverzeichnisse: SysProgAbgabenWS1516
5.11.2015 Einige haben nachgefragt, ob es weiterfuehrende Informationen zum x86 mit 64-Bit Architektur gibt. Eine sehr schoene Beschreibung habe ich in folgendem 46-seitigen Text gefunden:
https://www.cs.cmu.edu/~fp/courses/15213-s07/misc/asm64-handout.pdf
Die beiden Autoren Bryant und O'Hallaron sind auch die Autoren des beeindruckenden Buches "Computer Systems: A Programmers Perspective" (CSAPP), siehe http://csapp.cs.cmu.edu. Es enthaelt jede Menge interessente Themen zu system- und maschinennaher Programmierung, viel mehr als wir in unserer Veranstaltung machen koennen.