David Schirrmeister 26b786300a update
2024-06-02 16:59:37 +02:00

49 lines
1.1 KiB
Markdown

# 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)
-