This commit is contained in:
David Schirrmeister
2024-06-02 16:59:37 +02:00
parent 4207158b07
commit 26b786300a
14 changed files with 154 additions and 0 deletions

View File

@ -0,0 +1,48 @@
# ARM Toolchain
![image_296.png](image_296.png)
## Targets
### Entwicklung auf dem Device
- Native Toolchain
- Benötigt ein OS
### Cross Entwicklung
- Compiler auf dem PC übersetzt für Hardware für die Zielplattform
### Entwicklung im Emulator auf dem PC
- Compiler auf dem PC übersetzt für Hardware, ausgeführt im Simulator
- Wenn Hardware nicht verfügbar oder Entwicklung zeitaufwändig
- Insight, QEmu
### Bare Metal
- Für Mikroprozessor ohe BS
### Betriebssysteme
- Linux
- Embedded Windows
- Realtime OS
## Toolchain für das Praktikum
![image_297.png](image_297.png)
## GNU ARM Assembler
- ![image_298.png](image_298.png)
- rn = Registername
### Assembler-Direktiven
- können Übersetzungsvorgang steuern
- können Speicherbereiche für das Programm reservieren
- ![image_300.png](image_300.png)
- können Datenstrukturen für das Programm anlegen und initialisieren
- ![image_299.png](image_299.png)
### Pseudobefehle
- Befehle, die es in der Maschinensprache nicht gibt, aber häufig gebraucht werden
- Assembler übersetzt diese in eine geeignete Sequenz von "echten" Assemblerbefehlen
- Beispiel:
- ![image_301.png](image_301.png)
-