MOP: Hinweise zur professionellen Assembler-Programmierung
|
|
- Etta Pfaff
- vor 6 Jahren
- Abrufe
Transkript
1 Beuth Hochschule Berlin FB VI, Labor für Digitaltechnik MOP: Hinweise zur professionellen Assembler-Programmierung Allgemeine Grundlagen Ein Programm kann als Sammlung von Befehlen (engl. instructions ) in Form von Hexadezimalzahlen verstanden werden, die der Reihe nach im Programmspeicher (engl. code memory ; üblicherweise ein EPROM oder FLASH) angeordnet werden. Jede Instruction hat nach dem Abschluss der Programmierung ihren festen Platz im Programmspeicher und belegt dort 1-3 Speicherplätze. Aus diesem Programmspeicher holt die CPU einen Befehl nach dem anderen und verarbeitet ihn. Hinweis 1: Es gilt für alle Computer und Controller, dass nach dem Einschalten bzw. einem Reset immer bei der Programmspeicheradresse Null begonnen wird! Da dort beim Mikrocontroller nur drei freie Speicherplätze vorhanden sind, findet man üblicherweise einen Sprungbefehl zur eigentlichen Programmstart-Adresse (auch engl. reset vector genannt). Bei der Programmerstellung macht es in der Regel keinen Sinn, direkt die Hex-Codes der benötigten Befehle untereinander zu schreiben, sondern man bedient sich einer Programmiersprache. Hier unterscheidet man zwischen der maschinennahen Programmierung in Assembler und der Programmierung in einer Hochsprache (z.b. Programmiersprache C). Bei der Assemblerprogrammierung werden die Hexadezimalzahlen der Maschinenbefehle durch einprägsame englische Abkürzungen, den sog. Mnemonics (z.b. ADD oder MOV) ersetzt, die leichter zu merken sind. Ein Übersetzungsprogramm (Assembler mit Linker) macht daraus die erforderlichen Hexcodes. Man kann damit äußerst effizient Programme entwickeln. Dies setzt jedoch ein tiefes Verständnis der Vorgänge voraus. Dieses zu vermitteln, ist wesentlicher Bestandteil der Veranstaltung Maschinenorientierte Programmierung. Modulare Programmierung Ein professionelles Assemblerprogramm soll nicht nur funktionieren, sondern auch folgende Eigenschaften aufweisen: möglichst problemlose Fehlersuche ermöglichen leicht zu pflegen sein (d.h. nachträglich zu erweitern oder zu ändern sein) Nachvollziehung des Lösungswegs ohne Mithilfe auch für Dritte ermöglichen ohne Probleme auf andere Adressen im Programmspeicher verschiebbar sein bei großem Umfang der Aufgabe problemlos auf verschiedene Programmierer aufteilbar sein Wiederverwendung bewährter Programmteile oder Routinen ermöglichen Aus diesem Grund sollen Assemblerprogramme stets modular aufgebaut, d.h. aus einzelnen Modulen zusammengesetzt werden. Hierbei sollte man in jedem einzelnen Modul ein möglichst übersichtliches Haupt-Steuerprogramm entwerfen, das dann geeignete Unterprogramme aufruft. Diese Unterprogramme können entweder im gleichen Modul stehen oder als Teile aus einem anderen Modul verwendet werden. Alle Einzelmodule werden am Schluss vom Linker miteinander zum Gesamtprogramm verknüpft. Jedes Modul erhält seinen eigenen Namen und besteht selbst wieder aus einzelnen Teilstücken, den sogenannten Segmenten. Hierbei handelt es sich entweder um Programmteile mit Instruktionen (Codesegment) oder Speicherplatzreservierungen für einzelne Bits im direkt adressierbaren RAM auf dem Mikrocontroller (Bitsegment) oder Speicherplatzreservierungen für Daten, Konstanten usw. im direkt adressierbaren RAM auf dem Mikrocontroller (Datensegment) oder Speicherplatzreservierungen für Daten, Konstanten usw. im indirekt adressierbaren RAM- MOP_Labor_Assemblerprogrammierung.doc Seite 1 von 6 Beuth Hochschule Berlin
2 Bereich auf dem Mikrocontroller (indirektes Datensegment) oder Speicherplatzreservierungen für Daten, Konstanten usw. im externen RAM (externes Datensegment) Hinweis 2: Nur 255 Speicherplätze lassen sich im externen RAM reservieren. Wenn man diese über das Register R0 oder R1 statt über den Datapointer adressiert, spart das Zugriffszeit! Außerdem gibt es die Möglichkeit, verschiedene Bits für die eigene Anwendung zu definieren (= als Flags oder Merker ). Diese finden sich im bitadressierbaren Bereich des internen RAM unter den Adressen 20h bis 2Fh. Strukturierung mit Pseudobefehlen Im Code eines jeden Moduls finden sich Anweisungen, die sich in folgende Gruppen einteilen lassen: Assembler Instructions (Programmschritte), also Maschinenbefehle, die aus einzelnen Anweisungen im Binärcode bestehen, die dem Controller als Hex-Zahl mitgeteilt werden. Sie bilden die einzelnen Elemente eines ausführbaren Programmteiles. Der Programmierer schreibt diese Anweisungen jedoch in Form von Mnemonics, also in Form einfacher englischer Abkürzungen, die dann in Hex-Zahlen übersetzt werden. Assembler Directives (Direktiven oder Pseudobefehle genannt). Sie organisieren die verschiedenen Segmente und Speicherbereiche, legen Symbolnamen für Variablen oder Speicherplätze fest, definieren das Modulende usw. Achtung: Die Assembler Directives sind gewissermaßen Manager und produzieren selbst keine Programmcodes. Assembler Controls. Sie steuern die Assemblier- und Linkvorgänge und sind am Dollarzeichen ($) zu erkennen, mit dem sie eingeleitet werden. Gängige Controls sind z.b. $ERROR zum Generieren von Assembler-Fehlermeldungem, $WARNING um eine Nachricht auf der Konsole auszugeben, $SYMBOLS zum Erzeugen einer Symbol-Tabelle, etc. Bei Anweisungen gemäß der soeben genannten Gruppenzuordnungen gilt folgende Syntax: Assemblerbefehl: [symbol:] [instruction [arguments]] [;comment] Definition: symbol instruction argument [;comment] Steuerung: $control [(argument)] [;comment] Hier: MOV A, #0FFh ; definiere Label Hier und lade Akkumulator mit Wert FFh Jahr EQU 2011 ; definiere Symbol für aktuelles Jahr $INCLUDE (80C517.MCU) ; inkludiere z.b. SAB80C517 Register-Definitionen Je nach Datentyp bei Kontanten, etc. ist das Hinzufügen eines Suffix erforderlich. So gibt man bei der Darstellung in Binärform hinter der Kontanten ein b an (Beispiel: b), bei der Oktaldarstellung ein q oder o (Beispiel: 316q), bei der Dezimaldarstellung ein d (optional, kann auch weggelassen werden) und die Repräsentation von Hexzahlen 0...F ist durch Angabe des Buchstaben h eindeutig zu kennzeichnen (Beispiel: 0CEh). Um Assemblerprogramme, respektive Module, zu strukturieren und wie oben beschrieben Segmente zu definieren, verwendet man die Direktiven (oder Pseudobefehle). Folgende Befehle (Auswahl) stehen dafür zur Verfügung: Definiere Modulname: NAME <symbol> Definiere Adresse: ORG <exp> Benutze Registerbank: USING <exp> Programmende: END Des weiteren sind vor allem die folgenden Befehle nützlich: Definiere Bytes: DB <arg1> [,<arg2> [,<arg3>... ]] Definiere Worte: DW <arg1> [,<arg2> [,<arg3>... ]] Reserviere Speicherplatz: DS <exp> Reserviere Platz für Bits: DBIT <exp> MOP_Labor_Assemblerprogrammierung.doc Seite 2 von 6 Beuth Hochschule Berlin
3 DB 1, 2, 3+5, 2*7, 'A' DB 'Eine Zeile', 12 DW 0, 0C800h, 1999, 4711 DS 200h Definiere Konstante: <symbol> EQU <expr> Definiere Variable: <symbol> SET <expr> Countregister EQU R5 ; Name Countregister wird anstelle von R5 verwendet Chapter SET 1 ; Variable Chapter wird 1 gesetzt Chapter SET Chapter+1 ; Variable Chapter wird um 1 erhöht Definiere symb. Codeadresse: <symbol> CODE <expr> Definiere symb. Datenadresse: <symbol> DATA <expr> Definiere symb. indir. Adresse: <symbol> IDATA <expr> Definiere symb. Bitadresse: <symbol> BIT <expr> Definiere symb. ext. Adresse: <symbol> XDATA <expr> ProgMem CODE 08000h ; Adresse 8000h im Codespeicher heißt nun ProgMem Stack DATA 30h ; definiere symb. Datenadresse für Stack-Anfang V24Buffer IDATA 080h ; Adresse 80h für indir. Zugriff heißt nun V24Buffer Ausgang BIT P3.6 ; Portpin P3.6 heißt nun "Ausgang" Sample XDATA 0100h ; def. Sample als Speicherort 100h im ext. Speicher Anfang Codesegment: CSEG [AT <expr>] Anfang Datensegment: DSEG [AT <expr>] Anfang ind. Datensegment: ISEG [AT <expr>] Anfang Bitsegment: BSEG [AT <expr>] Anfang ext. Datensegment: XSEG [AT <expr>] CSEG AT 8000h ; beginne ein neues Codesegment bei Adresse 8000h XSEG AT 0 ; beginne ein neues externes Datensegment bei Adresse 0 DSEG ; wechsle zu bereits definiertem Datensegment Segmenttypen: CODE, DATA, IDATA, XDATA, BIT, NUMBER Offset EQU 16 ; Nummer Start CODE 30h ; Code DoIt CODE 0100h ; Code LED BIT P1.3 ; Bit Variabl4 DATA 20h ; Data Port DATA 0C8h ; Data Delay EQU 5 ; Nummer Start+Offset+3 Start+DoIt Port.Delay ; Code ; Nummer ; Bit MOP_Labor_Assemblerprogrammierung.doc Seite 3 von 6 Beuth Hochschule Berlin
4 Programmier-Systematik Die empfohlene Reihenfolge beim Programmentwurf ist Ihnen bereits aus den Aufgabenblättern des Labors bekannt. Zusammengefasst soll immer folgende Vorgehensweise eingehalten werden: 1. Erfassung und Analyse des Problems bzw. der zu lösenden Aufgabe 2. Formulierung eines geeigneten Lösungsweges (Algorithmus) 3. Umsetzung des Algorithmus in ein Struktogramm oder Flussdiagramm (Programmablaufplan) 4. Festlegung der dazu erforderlichen Module, ihrer Aufgaben und ihrer Namen (ist die Aufgabe weniger komplex, passt die Umsetzung des Algorithmus unter Umständen auch in ein einziges Modul) 5. Für jedes (Einzel-)Modul: Entwurf eines Steuerprogramms, Festlegung der erforderlichen Unterprogramme, Vergabe von Namen für die Segmente und Symbole, Reservierung von Datenbereichen usw. 6. Programmierung der Einzelsegmente jedes Moduls mit Hilfe eines geeigneten Texteditors auf dem PC (in Assemblersprache mit den entsprechenden Mnemonics, nur ASCII-Text ohne Formatierung und Sonderzeichen verwenden!) 7. Übersetzung des mit dem Editor erstellten Programms in Maschinenbefehle durch den Assembler, der einen noch verschiebbaren Objekt-Code (= eine Objekt - Datei) erzeugt. Dann unter Umständen Verbindung des geschriebenen Programmteils mit weiteren Makros, Bibliotheksroutinen etc. und Zuteilung der echten Programmspeicheradressen durch den Linker. Zum Schluss erfolgt noch die Übersetzung des kompletten, fertigen Programms in eine *.hex - Datei. 8. Übertragung dieses hex-files in den Programmspeicher des Mikrocontroller-Boards 9. Testen des Programms 10. Fehlersuche (Debugging). Sie beginnt immer mit der Wiederholung ab Schritt 5 Im normalen Betriebsfall ist das Programm in einem EPROM oder FLASH gespeichert und der Mikrocontroller beginnt nach dem Reset oder dem Einschalten immer bei der Code-Adresse 0000h. Dort sollte ein Sprungbefehl zur eigentlichen Programmstart-Adresse liegen, der die Abarbeitung ab einer anderen, sinnvolleren Speicheradresse initiiert (siehe Hinweis 1). Diese Programmstart-Adresse sollte eine Stelle im RAM-Speicher sein, die nach von Neumann-Architektur einen reservierten Programmspeicherbereich im gemeinsamen Programm- und Datenspeicher mittels Offset markiert. Will man Programme erstellen, prüfen, erweitern oder korrigieren, empfiehlt es sich nicht, jedes Mal sofort ein neues Programm auf den Mikrocontroller zu laden. Moderne Mikrocontroller erfordern zwar nicht mehr, dass jedes mal ein EPROM gebrannt werden muss. Stattdessen wird dies über das einfache Neubeschreiben eines FLASH realisiert. Dieser hat aber auch eine limitierte Lebensdauer, weshalb dringend anzuraten ist, den kompletten Mikrocontroller mit dem erstellten Programm vorab auf einem PC zu simulieren und dort das Programm zu testen. Erst nach einwandfreiem simuliertem(!) Verhalten, soll anschließend die Programmierung des Mikrocontrollers erfolden. Entwurfs- und Organisationsmethoden Programmstrukturen können sehr komplex werden. Deshalb ist es nötig, genau definierte Entwurfsund Organisationsmethoden anzuwenden. Eine Aufstellung der wichtigsten Vorschriften sind im Folgenden dargestellt. Assembler Controls und Directives werden zur besseren Übersicht groß geschrieben. Hinter einem Sprungziel (engl. label ) muss ein Doppelpunkt stehen. In einem Namen oder Label darf niemals ein Bindestrich verwendet werden! Es ist nur der Unterstrich erlaubt! Labels werden nie mit Zahlen begonnen. Bei Sprung- und Call-Befehlen genügt es, CALL bzw. JMP zu schreiben. Der Assembler wählt selbst den genau passenden Sprung- oder Call-Befehl aus. Jeder Befehl wird mit einem Kommentar versehen. Ein Semikolon kennzeichnet den darauffolgenden Text als Kommentar, der vom Assembler MOP_Labor_Assemblerprogrammierung.doc Seite 4 von 6 Beuth Hochschule Berlin
5 beim Übersetzen ignoriert wird. Erst ganz am Ende darf END stehen. Es folgt nun eine Mustervorlage (engl. template ) zur eigenen Assemblerprogrammierung, in die die gängigen Controls, Directives, Symboldeklarationen und Segmentdefinitionen bereits eingetragen sind. Die Ausführung ist bewusst einfach gehalten, um den Programmieranfänger nicht zu überfordern, kann aber nach Belieben sinnvoll erweitert werden, um auch Fortgeschrittenen zu dienen und sich konkreten praktischen Problemstellungen zu nähern. Nutzen Sie die Mustervorlage, um sich genau einzuprägen wie Controls, Directives, Symboldeklarationen und Segmentdefinitionen eingesetzt werden und wie insbesondere verschiedene Programmteile definiert und aufgerufen werden. Achten Sie darauf, dass nie die Stack- Reservierung in Ihrem Programm vergessen wird und dass das Label Start Ihres Assemblerprogramms stets die Stack-Adresszuweisung bzw. -korrektur vornimmt. Bei Verwendung der Directives DS und DB, sowie EQU und SET gilt besondere Vorsicht. DS (engl. für define store ; definiere einen Speicherplatz mit einem bestimmten Namen im angegebenen Memorybereich) darf trotz der Ähnlichkeit des Namens nicht mit DB (engl. für define Byte ) verwechselt werden. DB darf nur innerhalb eines Programmteiles verwendet werden und speichert einen oder mehrere vorgegebene Werte im Speicher (z. B. eine Tabelle oder einen Text). Tabelle: DB 0,1,2,3,4,5,6,7,8,9,10,20 ; diese Zahlenwerte werden als Tabelle gespeichert Tabelle: DB ; Vorsicht! Jetzt werden die ASCII-Zeichen der Zahlen ; gespeichert! Text: DB Bonbons machen froh ; auch das Bereitstellen von Text funktioniert, ; z.b. für eine Display-Anzeige Sammlung: DB 10,20,50,100, $, Das geht ja prima! ; Zahlen und Text dürfen sogar ; gemischt werden Zur Zuweisung eines Wertes oder Namens bei einem Byte kann anstelle von EQU (engl. für equate ; Übersetzung: bedeutet oder entspricht ) auch SET verwendet werden. Mit EQU gilt die Zuweisung allezeit, solange dieses Programm verwendet wird. Mit SET kann man dagegen den Namen im Nachhinein ändern. Nachdem Sie sich mit der Mustervorlage vertraut gemacht haben, können Sie diese als Vorlage für Ihre eigenen Programme verwenden. Die Mustervorlage zeigt die grundsätzliche Struktur von Assemblerprogrammen. Je nach Komplexität der Aufgabenstellung müssen Sie entscheiden wie man sie mit konkretem Inhalt zum Leben erweckt. In der Vorlage ist ein kurzes exemplarisches Hauptprogramm gezeigt, welches zu Übersichtszwecken blau markiert ist. MOP_Labor_Assemblerprogrammierung.doc Seite 5 von 6 Beuth Hochschule Berlin
6 ; Mustervorlage für ASEM-51 Assembler-Code PROG EQU 0000h ORG PROG+0000h SJMP START ; Interrupt-Vektor-Tabelle für die richtigen Stellen im Programmspeicher ORG PROG+0003h LCALL INT0_ISR I ORG PROG+000Bh LCALL T0_ISR I ORG PROG+0013h LCALL INT1_ISR I ORG PROG+001Bh LCALL T1_ISR I ORG PROG+0023h LCALL UART_ISR I ; Ende der Interrupt-Vektor-Tabelle Ausgang BIT P3.6 ; Portpin P3.6 heißt nun "Ausgang" Stack DATA 30h ; definiere symb. Datenadresse für Stack-Anfang ORG PROG+0030h ; Programmcodes werden erst ab Adresse 0030h gespeichert START: MOV ; hier fängt das eigentliche Programm an! SP, #Stack-1 ; Zuweisung der Stack-Adresse LOOP: ZEIT: DONE: CALL ZEIT ; Zeitschleife (Unterprogramm) aufrufen CPL Ausgang ; Portpin P1.0 invertieren JMP LOOP ; springe zu LOOP und wiederhole alles MOV R7, #250d ; lade Register R7 mit der Zahl 250 dezimal DJNZ R7, $ ; dekrementiere R7 bis auf Null, $ steht für aktuell. Programmzähler ; zurück aus dem Unterprogramm SJMP DONE ; Interrupt-Service-Routinen kommen hierher INT0_ISR: T0_ISR: INT1_ISR: T1_ISR: UART_ISR: ; Ende der Interrupt-Service-Routinen END ; Ende des Programms MOP_Labor_Assemblerprogrammierung.doc Seite 6 von 6 Beuth Hochschule Berlin
Mikroprozessoren Grundlagen AVR-Controller Input / Output (I/O) Interrupt Mathematische Operationen
Mikroprozessoren Grundlagen Aufbau, Blockschaltbild Grundlegende Datentypen AVR-Controller Anatomie Befehlssatz Assembler Speicherzugriff Adressierungsarten Kontrollstrukturen Stack Input / Output (I/O)
Mehr1.7 Assembler Programmierung
1.7 Assembler Programmierung Die nach außen sichtbare Programmierschnittstelle eines Prozessors ist der Befehlscode. Dies ist eine binäre Dateninformation, die vom Prozessor Byte für Byte abgearbeitet
Mehr3.0 8051 Assembler und Hochsprachen
3.0 8051 Assembler und Hochsprachen Eine kurze Übersicht zum Ablauf einer Programmierung eines 8051 Mikrocontrollers. 3.1 Der 8051 Maschinencode Grundsätzlich akzeptiert ein 8051 Mikrocontroller als Befehle
MehrTeil 1: Prozessorstrukturen
Teil 1: Prozessorstrukturen Inhalt: Mikroprogrammierung Assemblerprogrammierung Motorola 6809: ein einfacher 8-Bit Mikroprozessor Mikrocontroller Koprozessoren CISC- und RISC-Prozessoren Intel Pentium
MehrName: ES2 Klausur Thema: ARM 25.6.07. Name: Punkte: Note:
Name: Punkte: Note: Hinweise für das Lösen der Aufgaben: Zeit: 95 min. Name nicht vergessen! Geben Sie alle Blätter ab. Die Reihenfolge der Aufgaben ist unabhängig vom Schwierigkeitsgrad. Erlaubte Hilfsmittel
MehrBetriebssysteme Teil 4: Übersetzung von C-Programmen
Betriebssysteme Teil 4: Übersetzung von C-Programmen 18.10.13 1 Übersicht Übersetzungsprozess gcc(i) als Steuerprogramm Assembler Binder Hauptprogramme in C In dieser Einheit werden nur die Grundprinzipien
MehrMaschinensprache und Assembler
4. Befehle, die ein Digitalrechner ausführen soll, müssen binär codiert vorliegen. Diese Befehle werden als Maschinenbefehle bezeichnet. Will man z.b. beim 8051 den Inhalt des Accus in das Register R2
MehrProgrammierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13. Teil IV: Programmieren an Beispielen
Programmierung von ATMEL AVR Mikroprozessoren am Beispiel des ATtiny13 Eine Einführung in Aufbau, Funktionsweise, Programmierung und Nutzen von Mikroprozessoren Teil IV: Programmieren an Beispielen Die
MehrSkriptum Mikrocontroller-Systeme. Kapitel 6: Kapitel 7:
Hochschule Karlsruhe Fakultät Elektro- und Informationstechnik Studiengang Energie- und Automatisierungstechnik Skriptum Mikrocontroller-Systeme Kapitel 6: Befehlssatz des Mikrocontrollers C517 Kapitel
MehrÜbungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c
Übungen für die Einführung in die Assemblerprogrammierung mit dem Prozessor c515c 1 Transportbefehle 1.1 Verwendung nur Akku und Register (R0, R1,... R7) 1.1.1 Kopieren Sie den Wert aus Register1 nach
MehrBefehlssatz AVR RISC Controller
Befehlssatz AVR RISC Controller Design-Philosophie des AVR Befehlssatzes Assembler-Sprache AVR-Befehlssatz Philosophie RISC = Reduced Instruction Set Computing keine komplexen Befehle möglichst symmetrischer
MehrBesprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online
Themen heute Besprechung des 3. Übungsblattes MIMA-Interpreter MIMA-Aufgabe: Primzahltest Weitere MIMA-Aufgaben online Besprechung des 3. Übungsblattes Aufgabe 3 Speicherplätze für Mikrocode-Anweisungen
MehrProf. Dr. Pollakowski 19.03.2013
Installations- und Bedienungsanleitung für die Mikrocontroller-Entwicklungsumgebung, das Mikrocontroler-Experimentalsystem und den Mikrocontroller-Simulator 1 Begriffe: Entwicklungsumgebung = ein Programm
MehrKapitel 04: Das erste Projekt Abschnitt 04: Überblick über das Programm
Kapitel 04: Das erste Projekt Abschnitt 04: Überblick über das Programm Beim Durchgehen des Programms will ich die verschiedenen Abschnitte zeigen, aus denen jedes ATmega-Assemblerprogramm besteht. Da
Mehr0 C (Carry) Überlauf des 8ten Bits. 1 DC (Digit Carry) Überlauf des 4ten Bits. Mnemonic Parameter Beschreibung Status-Flags.
3. Assembler-Programmierung Der PIC 16F84A Microcontroller kennt 35 verschiedene Befehle. Für eine ausführliche Beschreibung aller Befehle siehe PIC16F84A-Datenblatt Kapitel 7.1. 3.1 Wichtige Flaggen im
MehrD i g i t a l l a b o r
Hochschule Karlsruhe Technik und Wirtschaft Fakultät für Informatik und Wirtschaftsinformatik Prof. Dr. A. Ditzinger / Dipl.-Inform. (FH) O. Gniot Prof. Dr. N. Link / Dipl.-Ing. J. Krastel D i g i t a
MehrEin erstes Assembler-Projekt
Das Attiny-Projekt Ein erstes Assembler-Projekt 1 Ein erstes Assembler-Projekt In diesem Kapitel wollen wir ein erstes einfaches Assembler-Programm für unsere Attiny-Platine schreiben. Worum soll es gehen?
MehrProzessor HC680 fiktiv
Prozessor HC680 fiktiv Dokumentation der Simulation Die Simulation umfasst die Struktur und Funktionalität des Prozessors und wichtiger Baugruppen des Systems. Dabei werden in einem Simulationsfenster
MehrProgrammieren. Wie entsteht ein Programm
Wie entsteht ein Programm 1/9 1. Schritt: Programmentwurf Der wichtigste Teil beim Erstellen eines Programms ist der Programmentwurf. Dabei wird das vorgegebene Problem analysiert, es wird ermittelt, welche
MehrProgrammieren in C Teil 3: Mikrocontrollerprogrammierung
Programmieren in C Teil 3: Mikrocontrollerprogrammierung 08/30/10 Fachbereich Physik Institut für Kernphysik Bastian Löher, Martin Konrad 1 Tag 1 Hello World 08/30/10 Fachbereich Physik Institut für Kernphysik
MehrRechnerarchitektur Atmega 32. 1 Vortrag Atmega 32. Von Urs Müller und Marion Knoth. Urs Müller Seite 1 von 7
1 Vortrag Atmega 32 Von Urs Müller und Marion Knoth Urs Müller Seite 1 von 7 Inhaltsverzeichnis 1 Vortrag Atmega 32 1 1.1 Einleitung 3 1.1.1 Hersteller ATMEL 3 1.1.2 AVR - Mikrocontroller Familie 3 2 Übersicht
MehrGrundlagen der Programmiersprache C++
/ TU Braunschweig Grundlagen der Programmiersprache C++ Um den Studierenden den Einstieg in die FE-Programmierung zu erleichtern werden die wesentlichen Elemente eines C-Programmes beschrieben, soweit
MehrInhaltsverzeichnis. Grundbegriffe der C-Programmierung Für den HI-TECH C-Compiler
Inhaltsverzeichnis Grundbegriffe der C-Programmierung 1. Grundsätzliches... 2 1.1 Darstellung von Werten... 2 1.1.1 Dezimale Zahlendarstellung... 2 1.1.2 Binäre Zahlendarstellung... 3 1.1.3 Hexadezimale
Mehrx86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013
x86 Assembler Praktische Einführung Sebastian Lackner Michael Müller 3. Juni 2013 1 / 53 Inhaltsverzeichnis 1 Einführung 2 Assembler Syntax, Register und Flags 3 Hauptspeicher 4 Stack 5 Assemblerbefehle
MehrErgänzungen zum Manual OS V 2.05/2.06
Ergänzungen zum Manual OS V 2.05/2.06 SYSTEMRESOURCEN - PROGRAMM DOWNLOAD - Ab der Betriebssystemversion 2.05 haben die C-Control Units M-2.0 und Station 2.0 die Möglichkeit das Anwenderprogramm von einem
MehrAtmel AVR für Dummies
Atmel AVR für Dummies fd0@koeln.ccc.de 29.12.2005 Übersicht 1 Hardware Kurzvorstellung Atmega8 Programmierkabel (Eigenbau vs. Kommerzlösung) Alternative: Bootloader (Programmieren via rs232) Software Speicher
MehrEinführung in die Programmiersprache C und in den C166-Compiler
Einführung in die Programmiersprache C und in den C166-Compiler Die vorliegenden Unterlagen sollen einen kurzen Überblick über die Software-Entwicklung in C geben. Diese Unterlagen erheben keinen Anspruch
MehrDie Mikroprogrammebene eines Rechners
Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten, z.b. Befehl holen Befehl dekodieren Operanden holen etc.
MehrPraktikum Mikrocomputertechnik
Anleitung zum Praktikum Mikrocomputertechnik Im Praktikum wird der Mikrocontroller 68332 von Motorola verwendet. Dieser Mikrocontroller besteht aus einer 32-Bit CPU und integrierten Peripheriebausteinen
MehrAssembler-Programmierung
Assembler-Programmierung Dr.-Ing. Volkmar Sieh Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg SS 2011 Assembler-Programmierung 1/48 2012-02-29 Assembler-Programmierung
MehrTechnische Informatik 1
Technische Informatik 1 2 Instruktionssatz Lothar Thiele Computer Engineering and Networks Laboratory Instruktionsverarbeitung 2 2 Übersetzung Das Kapitel 2 der Vorlesung setzt sich mit der Maschinensprache
MehrB1 Stapelspeicher (stack)
B1 Stapelspeicher (stack) Arbeitsweise des LIFO-Stapelspeichers Im Kapitel "Unterprogramme" wurde schon erwähnt, dass Unterprogramme einen so genannten Stapelspeicher (Kellerspeicher, Stapel, stack) benötigen
MehrRechnerorganisation 2 TOY. Karl C. Posch. co1.ro_2003. Karl.Posch@iaik.tugraz.at 16.03.2011
Technische Universität Graz Institut tfür Angewandte Informationsverarbeitung und Kommunikationstechnologie Rechnerorganisation 2 TOY Karl C. Posch Karl.Posch@iaik.tugraz.at co1.ro_2003. 1 Ausblick. Erste
MehrFachhochschule Kaiserslautern Fachbereich Angewandte Ingenieurwissenschaften WS2010/11. Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.
Lehrprozessor: Coldfire MCF-5272 Zeitpunkt der Prüfung: 18.01.2011 Beginn: 10.45 Uhr Raum: Aula Bearbeitungszeit: 180 Minuten Erlaubte Hilfsmittel: Gedrucktes Vorlesungsskript von Prof. Neuschwander mit
MehrMikroprozessor bzw. CPU (Central Processing. - Steuerwerk (Control Unit) - Rechenwerk bzw. ALU (Arithmetic Logic Unit)
Der Demo-Computer besitzt einen 4Bit-Mikroprozessor. Er kann entsprechend Wörter mit einer Breite von 4 Bits in einem Schritt verarbeiten. Die einzelnen Schritte der Abarbeitung werden durch Lampen visualisiert.
MehrSOFTWAREENTWICKLUNG FÜR
MIKROPROZESSOR PROGRAMMIERUNG 7. VORLESUNG BIT LV-Nr. 439.026 SS2007 1 SOFTWAREENTWICKLUNG FÜR µc Übersicht - Prinzipdarstellung Der Weg zu einem lauffähigen Maschinenprogramm Vergleich von Programmiersprachen
Mehr01.04.2004 Fachbereich Informatik Microcomputer-Labor TFH Berlin MCÜ 65 1. Laborübung -Beschreibung der Hardware -Beschreibung der Aufgabe Seite 2 -Frontplatte des Zielsystems Seiten 3 -Tabellen und Timingdiagramme
MehrPrinzipieller Grundaufbau eines einfachen C-Programmes
Prinzipieller Grundaufbau eines einfachen C-Programmes C unterscheidet zwischen Groß- und Kleinschreibung! Siehe zu den folgenden Erklärungen auch das Programm am Ende der nächsten Seite. Am Anfang aller
MehrAVR-Mikrocontrollertechnik
1/31 Ziele der Weiterbildung Vermitteln von Grundlagen zu den AVR Controllern Vermitteln von Assembler Grundlagen Vorstellen der benötigten Hard und Software Eigenständiges Programmieren der Controller
MehrInstruktionssatz-Architektur
Institut für Informatik 3: Rechnerarchitektur Friedrich-Alexander-Universität Erlangen-Nürnberg WS 2005/2006 Übersicht 1 Einleitung 2 Bestandteile der ISA 3 CISC / RISC Übersicht 1 Einleitung 2 Bestandteile
MehrI.1 Die Parrot Assemblersprache
I.1 Die Parrot Assemblersprache Die virtuelle CPU Parrot ermöglicht die Verarbeitung der Parrot Assemblersprache (PASM). Zum Einstieg soll ein erstes Beispiel die Ausführung einer PASM-Datei zeigen. Legen
MehrDer 80535-Übungsrechner
6. Für den Test kleinerer Programmodule ohne Berücksichtigung des Echtzeitverhaltens ist der Simulator das geeignete Werkzeug. Durch die Möglichkeit der Einzelschrittausführung sind erste Tests von Programmen
MehrUART-Kommunikation mit dem Atmel AVR
Fachbereich Elektrotechnik und Informatik Labor für Angewandte Informatik und Datenbanken Praktikum Automatisierung / Echtzeitregelung (BAU/BER) Prof.Dr.-Ing. Coersmeier UART-Kommunikation mit dem Atmel
MehrDie Daten (Befehle und numerische Daten) werden in Form von BIT-Folgen verarbeitet.
Übung Nr. 1b: MIKROPROZESSOR, Hewlett - Packard µ-lab en sind kleine Computer, die mit externen Geräten Daten austauschen können. Sie verfügen über Speicher, um Programme und Daten zu speichern und Eingangsund
MehrÜbungscomputer mit Prozessor 8085 - Bedienungsanleitung
Seite 1 von 9 Pinbelegung der Steckerleisten im Übungsgerät Seite 2 von 9 Inbetriebnahme: Schalter S1, S2, und S3 in Stellung 1 (oben) schalten. Spannung 5 V anlegen. ACHTUNG auf Polarität achten. Taste
MehrAssembler in der Arduino-IDE: ein Einblick
Skript Assembler in der Arduino-IDE: ein Einblick C-Code Die Arduino-IDE baut auf dem GNU-Assembler auf. Daher ist es möglich, mit der avr-gcc den µc über die ISP-Schnittstelle in Assembler programmieren.
MehrAnlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt
Anlegen eines Speicherbereichs mit DB, DW eleganter in Kombination mit EQU, Timer-Interrupt AMPEL-Steuerung(en) Die Beschreibung und Programmierung der Ampel (vor allem Ampel_5) können sehr kompliziert
MehrEinführung in die C-Programmierung
Einführung in die C-Programmierung Warum C? Sehr stark verbreitet (Praxisnähe) Höhere Programmiersprache Objektorientierte Erweiterung: C++ Aber auch hardwarenahe Programmierung möglich (z.b. Mikrokontroller).
MehrMicrocontroller Kurs. 08.07.11 Microcontroller Kurs/Johannes Fuchs 1
Microcontroller Kurs 08.07.11 Microcontroller Kurs/Johannes Fuchs 1 Was ist ein Microcontroller Wikipedia: A microcontroller (sometimes abbreviated µc, uc or MCU) is a small computer on a single integrated
MehrGegenüberstellung von Assembler- und C-Programmierung
Gegenüberstellung von Assembler- und C-Programmierung Assembler-Version C-Version org 8000h #pragma code=0x8000 #pragma xdata=0x2000 INPUT equ 0e081h OUTPUT equ 0e082h neu: mov dptr,#input movx a,@dptr
MehrTechnische Informatik 2 Maschinenprogrammierungskonzepte
Technische Informatik 2 Maschinenprogrammierungskonzepte Prof Dr Miroslaw Malek Sommersemester 2005 wwwinformatikhu-berlinde/rok/ca Thema heute Ausführung von Befehlen Ein-/Ausgabeprogrammierung Architekturen
MehrTechnische Informatik 2 Adressierungsarten
Technische Informatik 2 Adressierungsarten Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute X-Adressmaschine 0-Adressmaschine 1-Adressmaschine 2-Adressmaschine
MehrErste Schritte. Das Arduino-Board. Ihr Fundino-Board. Programmieren für Ingenieure Sommer 2015. Andreas Zeller, Universität des Saarlandes
Erste Schritte Programmieren für Ingenieure Sommer 2015 Andreas Zeller, Universität des Saarlandes Das Arduino-Board Ihr Fundino-Board Anschluss über USB Anschluss über USB Programmierumgebung Download
Mehr9 Strukturierte Programmierung
9 Die "strukturierte Programmierung" ist entstanden aus dem Wunsch, die Korrektheit von Programmen beweisen zu können. Dies wäre ein ziemlich hoffnungsloses Unterfangen, wenn jede beliebige Programmstruktur
MehrImport SIMATIC-Variablen
Application Note GALILEO 12/2010 MN04802062Z-DE ersetzt M001873-01, 07/2007 Import SIMATIC-Variablen Impressum Hersteller Eaton Automation AG Spinnereistrasse 8-14 CH-9008 St. Gallen Schweiz www.eaton-automation.com
MehrKapitel 1. Programmierkurs. 1.2 Allgemeiner Aufbau des Computers. 1.1 Hallo, Computer...?
Kapitel 1 Programmierkurs Birgit Engels, Anna Schulze ZAIK Universität zu Köln Einführung Hallo, Computer...? Aufbau eines Computers Was ist eine Programmiersprache? Der Programmierprozess Warum Java?
MehrFehlerkorrektur Bild 3.190 Demoprozessor
7 Prozessor 3 0 Flags C V N Z A IP 0 SP AB 8 MS W/R DB 4 00h..6Fh Daten Speicher 70h..70h PA 71h..71h PB 72h..73h PC 74h..76h PD 80h..FFh Programm Speicher Fehlerkorrektur Bild 3.190 Demoprozessor Die
MehrEine Einführung in C-Funktionen
Eine Einführung in C-Funktionen CGK-Proseminar 2014 Philip Gawehn 04.07.2014, Hamburg Inhaltsverzeichnis 1 Einleitung 2 2 Grundlagen 2 2.1 Der Aufbau einer Funktion....................... 2 2.2 Schlüsselwörter.............................
Mehr5.BMaschinensprache und Assembler
Die Maschinenprogrammebene eines Rechners Jörg Roth 268 5.BMaschinensprache und Assembler Die vom Prozessor ausführbaren Befehle liegen im Binärformat vor. Nur solche Befehle sind direkt ausführbar. So
MehrProgrammieren in C Einführung
Programmieren in C Einführung Aufbau eines Programms Einfache Programme Datentypen und Vereinbarungen Das Entwicklungswerkzeug Seite Einfache Programme Kugeltank-Berechnung #include void main
MehrParallel-IO. Ports am ATmega128
Parallel-IO Ansteuerung Miniprojekt Lauflicht Ports am ATmega128 PortE (PE7...PE0) alternativ, z.b. USART0 (RS232) 1 Pin von PortC Port C (PC7...PC0) 1 Parallel-IO-Port "Sammelsurium" verschiedener Speicher
MehrPraktikum Mikrocontroller und Eingebettete Systeme
Institut für Informatik Professur für Eingebettete Systeme Praktikum Mikrocontroller und Eingebettete Systeme Wintersemester 2012/2013 Eingebettete Systeme Prof. Dr. Uwe Brinkschulte Dipl.-Inform. Daniel
MehrKapitel VI. Speicherverwaltung. Speicherverwaltung
Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene
MehrMaster-Boot-Record sichern
Master-Boot-Record sichern Allgemeines Mit dem Master-Boot-Record (MBR) kommt der normale Computernutzer nur selten in Kontakt, eigentlich nur zweimal. Bei der Installation von Linux wird in der Regel
MehrÜbung -- d001_7-segmentanzeige
Übung -- d001_7-segmentanzeige Übersicht: Der Steuerungsablauf für die Anzeige der Ziffern 0 bis 9 mittels einer 7-Segmentanzeige soll mit einer speicherprogrammierbaren Steuerung realisiert werden. Lehrziele:
MehrInterrupts. Funktionsprinzip. Funktionsprinzip. Beispiel in C
Interrupts Funktionsprinzip Interrupts bei ATmega128 Beispiel in C Funktionsprinzip 1 Was ist ein Interrupt? C muss auf Ereignisse reagieren können, z.b.: - jemand drückt eine Taste - USART hat Daten empfangen
MehrKap 4. 4 Die Mikroprogrammebene eines Rechners
4 Die Mikroprogrammebene eines Rechners Das Abarbeiten eines Arbeitszyklus eines einzelnen Befehls besteht selbst wieder aus verschiedenen Schritten (Befehl holen, Befehl dekodieren, Operanden holen etc.).
MehrAusbildungsunterlage für die durchgängige Automatisierungslösung Totally Integrated Automation (T I A) MODUL B4 Datenbausteine
Ausbildungsunterlage für die durchgängige Automatisierungslösung Totally Integrated Automation (T I A) MODUL B4 T I A Ausbildungsunterlage Seite 1 von 18 Modul B4 Diese Unterlage wurde von Siemens A&D
Mehr1. Formulieren Sie den Algorithmus <Bedienung eines Getränkeautomaten> nach den oben genannten Kriterien.
Java 1 Einführung Grundlegende Übungsaufgaben Arbeitsauftrag 1.1 1. Formulieren Sie den Algorithmus nach den oben genannten Kriterien. Beispiel: Bedienung eines Getränkeautomaten
MehrProgrammiertechnik. Prof. Dr. Oliver Haase Raum G124 haase@htwg-konstanz.de Tel: 07531/206-150. Oliver Haase Hochschule Konstanz 1
Programmiertechnik Prof. Dr. Oliver Haase Raum G124 haase@htwg-konstanz.de Tel: 07531/206-150 Oliver Haase Hochschule Konstanz 1 Organisatorisches Vorlesung: montags, 8:00 9:30h, Raum C-109 freitags, 8:00
MehrIm Original veränderbare Word-Dateien
Das Von-Neumann-Prinzip Prinzipien der Datenverarbeitung Fast alle modernen Computer funktionieren nach dem Von- Neumann-Prinzip. Der Erfinder dieses Konzeptes John von Neumann (1903-1957) war ein in den
Mehr3 Der Debugger. 3.1 Überblick. 3.2 Einschränkungen
3 Der Debugger 3.1 Überblick Die Funktion des Debuggers beruht darauf, dass an das Ende des zu debuggenden Programms ein Monitor mit einer Länge von knapp 1 kbyte angehängt wird. Dieser Monitor wird nach
MehrDeklarationen in C. Prof. Dr. Margarita Esponda
Deklarationen in C 1 Deklarationen Deklarationen spielen eine zentrale Rolle in der C-Programmiersprache. Deklarationen Variablen Funktionen Die Deklarationen von Variablen und Funktionen haben viele Gemeinsamkeiten.
MehrPROGRAMMIEREN MIT C. }, wird kompiliert mit dem Befehl. (-o steht für output) und ausgeführt mit dem Befehl
PROGRAMMIEREN MIT C Allgemeine hinweise Alles was hier beschrieben wird, soll auch ausprobiert werden. Warum C? Weil die coolen Dinge mit C am einfachsten gehen. Das werden wir in den folgenden Übungen
MehrZähler- und Zeitgeber-Baugruppen
Zähler- und Zeitgeber-Baugruppen Sinn: häufig müssen Zeitbedingungen eingehalten werden z.b.: einige ms warten, Häufigkeit von Ereignissen zählen etc... Lösung: 1.) Zeitschleifen = Programm abarbeiten,
MehrProgrammiersprachen und Programmierkonzepte
Programmiersprachen und Programmierkonzepte Inhalt Programmiersprachen- Entwicklung Programmiersprachen und Programmierparadigmen Die Geschichte der Programmiersprachen Anfänge vor 200 Jahren Programmierbare
MehrAutomatisierungstechnik AP1
Automatisierungstechnik AP1 Übersicht 1 Lernziele: Automatisierungstechnik AP1 Einführung in die Prozessorarchitektur und Maschinenprogrammierung Grundlagen des Aufbaus und der Wirkungsweise von Prozessoren
MehrDIGITALVARIO. Anleitung Bootloader. Ausgabe 0.1 deutsch 29.11.2005. für Direkt-Digital-Vario. Firmware ab 00-06-00 Hardware 01 Seriennummer ab 0003
DIGITALVARIO Anleitung Bootloader Ausgabe 0.1 deutsch 29.11.2005 für Direkt-Digital-Vario Firmware ab 00-06-00 Hardware 01 Seriennummer ab 0003 1. Funktion Der Bootloader dient dazu Updates der Variosoftware
MehrMikrocontroller effektiv in C programmieren - ein noch unbekanntes Land
Mikrocontroller effektiv in C programmieren- ein noch unbekanntes Land Mikrocontroller effektiv in C programmieren - ein noch unbekanntes Land HS Pforzheim Fakultät Technik Mikrocontroller-Labor Tiefenbronner
MehrCompiler: Vom Code zum Maschinen-Code. C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg
Compiler: Vom Code zum Maschinen-Code C Programmierung - Vorlesung 2 Hochschule Regensburg 19.03.2012 Universitätsstraße 31, 93053 Regensburg Prof. Dr. Jan Dünnweber Zusammenhänge: C und Assembler Hochsprachen
Mehr11. Mikrocontroller. 11.1 Einführung
11. Mikrocontroller 11.1 Einführung Mikroprozessoren sind monolithisch integrierte Rechner-Baugruppen, die zumindest Steuerwerk und Rechenwerk umfassen. Während bei früheren Mikroprozessoren die Ein- /
Mehr1 MAKROS AUFZEICHNEN. 1.1 EinfÄhrung
Makro Aufzeichnen Makro + VBA effektiv 1 MAKROS AUFZEICHNEN 1.1 EinfÄhrung Sie kçnnen Excel sehr einfach automatisieren, indem Sie ein Makro aufzeichnen. Ühnlich wie bei einem Kassettenrecorder werden
MehrEinführung in Automation Studio
Einführung in Automation Studio Übungsziel: Der links abgebildete Stromlaufplan soll mit einer SPS realisiert werden und mit Automation Studio programmiert werden. Es soll ein Softwareobjekt Logik_1 in
MehrCompiler und Präprozessor (1) Erstellen eines Projektes
Compiler und Präprozessor (1) Erstellen eines Projektes Projekte bestehen meist aus mehreren Dateien, z.b. Quelldateien, Funktionssammlungen in Bibliotheken Zur Definition eines Projektes sind folgende
MehrEinheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen
Einheit Variablen in der Programmiersprache C Variablen-Modell, Variablen-Vereinbarungen Kurs C/C++ Programmierung, WS 2008/2009 Dipl.Inform. R. Spurk Arbeitsgruppe Programmierung FR 6.2 Informatik R.
MehrStephan Brumme, SST, 2.FS, Matrikelnr. 70 25 44
Aufgabe 33 a) Der Pseudobefehl move $rd,$rs wird als addu $rd,$0,$rs übersetzt. Dabei macht sich SPIM zunutze, dass das Register $0 immer Null ist. Somit wird das Register $rd ersetzt durch $rd=0+$rs=$rs,
MehrGrundlagen. Kapitel 1
Grundlagen Dieses Kapitel umfasst grundlegende Fragen und Aufgaben zur Erstellung von C++-Programmen. Hierzu zählen auch das Inkludieren von Header-Dateien Eine Header-Datei beinhaltet Informationen, die
MehrSPS. Nockenschaltwerk- Software
SPS Nockenschaltwerk- Software für S5 oder S7 Digitronic Steinbeisstraße 3 D - 72636 Frickenhausen Tel. (+49)7022/40590-0 Fax -10 Auf der Langwies 1 D - 65510 Hünstetten-Wallbach Tel.(+49)6126/9453-0 Fax
MehrKapitel 1. Grundlagen
Grundlagen Dieses Kapitel beschreibt die nötigen Schritte zur Erstellung eines lauffähigen C- Programms. Diese Schritte können Sie auf Ihrem System anhand von einführenden Beispielen nachvollziehen. Die
MehrEchtzeitbetriebssysteme/ Prozessdatenverarbeitung II
Fachhochschule Kaiserslautern Prof. Dr. P. Liell Echtzeitbetriebssysteme/ Prozessdatenverarbeitung II SS 2012 1. Versuch Allgemeines zum Ablauf und zur Versuchsausarbeitung Es ist eine Ausarbeitung zum
MehrMikrocomputertechnik - Programmierung
3 Programmierung Assembler Aufgaben: Übersetzt mnemotechnische Abkürzungen (z.b. move, add...) in die Maschinenbefehle des Prozessors Ermöglicht die Vergabe von Namen für Speicheradressen (Label) Berechnet
MehrVirtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44
Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock
MehrTag 9: Datenstrukturen
Tag 9: Datenstrukturen A) Datenstrukturen B) Cell Arrays C) Anwendungsbeispiel: Stimulation in einem psychophysikalischen Experiment A) Datenstrukturen Wenn man komplizierte Datenmengen verwalten möchte,
MehrFreescale 68HCS12X Aufbau eines Linker Commandfiles für den 68HCS12XDP512 (ohne XGATE)
COSMIC Software GmbH Rohrackerstr. 68 D-70329 Stuttgart Tel. ++49 (0) 711 42040 62 Fax. ++49 (0) 711 42040 68 Email sales@cosmic-software.de Internet www.cosmic-software.com Seite 1 von 13 Tech. Note:
MehrKlausur Betriebssystemkonzepte sowie Architektur von Rechnersystemen und Betriebssystemkonzepte
BSK/ARBK SS-04 Oß (Fachbereich 5, Elektrotechnik und Informationstechnik) Zuname: Vorname: Matr.-Nr.: Klausur Betriebssystemkonzepte sowie Architektur von Rechnersystemen und Betriebssystemkonzepte Fach-Nummer:
MehrSnippets - das Erstellen von "Code- Fragmenten" - 1
Snippets - das Erstellen von "Code- Fragmenten" Das Erstellen von "Code- Fragmenten", welche mit dem TinyMCE ausgewählt werden können. Grundlegendes: Die Datei, welche die in Folge erklärten Daten und
MehrMakros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler die Datein verarbeitet.
U4 4. Übung U4 4. Übung Besprechung Aufgabe 2 Makros Register I/O-Ports U4.1 U4-1 Makros U4-1 Makros Makros sind Textersetzungen, welche vom Präprozessor aufgelöst werden. Dies Passiert bevor der Compiler
Mehra. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF
ITS Teil 2: Rechnerarchitektur 1. Grundschaltungen der Digitaltechnik a. Flipflop (taktflankengesteuert) Wdh. Signalverläufe beim D-FF b. Zähler (Bsp. 4-Bit Zähler) - Eingang count wird zum Aktivieren
MehrC. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner
Von-Neumann-Rechner (John von Neumann : 1903-1957) C. BABBAGE (1792 1871): Programmgesteuerter (mechanischer) Rechner Quelle: http://www.cs.uakron.edu/~margush/465/01_intro.html Analytical Engine - Calculate
MehrIT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken
IT- Handbuch für Fachinformatiker, 7. Auflage: Text- Lösungen Sascha Kersken Im Folgenden finden Sie jeweils die korrekte Antwort zu den im Buch abgedruckten Prüfungsfragen, soweit die Antworten in Textform
Mehr