Benutzerbeiträge von „Satyria“
Aus C und Assembler mit Raspberry
Ein Benutzer mit 1.209 Bearbeitungen. Das Konto wurde am 2. Juli 2024 erstellt.
27. September 2024
- 09:1609:16, 27. Sep. 2024 Unterschied Versionen +70 Bytes K ARMv8-Übersicht Keine Bearbeitungszusammenfassung aktuell
26. September 2024
- 12:4312:43, 26. Sep. 2024 Unterschied Versionen +1.640 Bytes K Lade- und Speicheranweisungen Keine Bearbeitungszusammenfassung aktuell
- 12:4012:40, 26. Sep. 2024 Unterschied Versionen +40 Bytes K Lade- und Speicheranweisungen →Atomare Operationen
- 12:3912:39, 26. Sep. 2024 Unterschied Versionen +40 Bytes K Lade- und Speicheranweisungen →Atomare Operationen
- 11:1111:11, 26. Sep. 2024 Unterschied Versionen 0 Bytes K Lade- und Speicheranweisungen →Atomare Operationen
- 11:1011:10, 26. Sep. 2024 Unterschied Versionen +559 Bytes K Lade- und Speicheranweisungen Keine Bearbeitungszusammenfassung
- 11:0311:03, 26. Sep. 2024 Unterschied Versionen +2.891 Bytes N Lade- und Speicheranweisungen Die Seite wurde neu angelegt: „Die "Lade- und Speicheranweisungen" im ARMv8 sind essenziell für den Zugriff auf den Speicher, sowohl um Daten zu lesen (Load) als auch zu schreiben (Store). Diese Anweisungen sind entscheidend für jede Art von Datenverarbeitung. == Grundlegendes == In der ARMv8-Architektur bedeutet "Load" das Laden von Daten aus dem Speicher in Register, während "Store" das Schreiben von Daten aus Register in den Speicher bedeutet. Dabei unterstützen "Loads and Stor…“
- 10:5510:55, 26. Sep. 2024 Unterschied Versionen +36 Bytes K Überblick der A64-Befehlen Keine Bearbeitungszusammenfassung aktuell
- 10:4910:49, 26. Sep. 2024 Unterschied Versionen +3.637 Bytes N Verzweigungen, Ausnahmegenerierung und Systemanweisungen Die Seite wurde neu angelegt: „Lass uns die Themen Verzweigungen, Ausnahmegenerierung und Systemanweisungen in der ARMv8-Architektur ausführlich betrachten. == Verzweigungen (Branches) == Verzweigungen sind essenziell für die Programmsteuerung und die Implementierung von Schleifen, Bedingungslogik und Funktionsaufrufen. In ARMv8 gibt es verschiedene Instruktionen zum Handhaben von Verzweigungen. === Unbedingte Verzweigung === * B (Branch) :Beispiel: <code>B label</code> :Erläuter…“ aktuell
- 10:3010:30, 26. Sep. 2024 Unterschied Versionen +71 Bytes N Überblick der A64-Befehlen Die Seite wurde neu angelegt: „Inhalt: * Verzweigungen, Ausnahmegenerierung und Systemanweisungen“
- 10:2910:29, 26. Sep. 2024 Unterschied Versionen +34 Bytes K ARMv8-Übersicht Keine Bearbeitungszusammenfassung
- 10:1710:17, 26. Sep. 2024 Unterschied Versionen +17 Bytes K Speicheradressen Keine Bearbeitungszusammenfassung aktuell
- 10:1410:14, 26. Sep. 2024 Unterschied Versionen +2.152 Bytes K Speicheradressen Keine Bearbeitungszusammenfassung
- 09:2309:23, 26. Sep. 2024 Unterschied Versionen +411 Bytes N Speicheradressen Die Seite wurde neu angelegt: „== Adressgenerierung == Der A64-Befehlssatz unterstützt 64-Bit-virtuelle Adressen (VAs). Der gültige VA-Bereich wird durch die folgenden Faktoren bestimmt: * Die Größe des implementierten virtuellen Adressraums. * Konfigurationseinstellungen der Memory Management Unit (MMU). Beschränkungen der VA-Größe bedeuten, dass die höchstwertigen Bits der virtuellen Adresse keine gültigen Adressbits enthalten.“
- 09:2109:21, 26. Sep. 2024 Unterschied Versionen +23 Bytes K ARMv8-Übersicht Keine Bearbeitungszusammenfassung
- 09:1909:19, 26. Sep. 2024 Unterschied Versionen +604 Bytes K Register Keine Bearbeitungszusammenfassung
- 09:0709:07, 26. Sep. 2024 Unterschied Versionen +1.382 Bytes K Register Keine Bearbeitungszusammenfassung
- 08:5808:58, 26. Sep. 2024 Unterschied Versionen +1.036 Bytes N Register Die Seite wurde neu angelegt: „== Allzweckregister, Nullregister und Stapelzeiger == Die 31 Allzweckregister werden R0-R30 genannt. Das Register R31 zeigt den aktuellen Stapelzeiger oder das Nullregister dar. Wenn die Register in einer bestimmten Befehlsvariante verwendet werden, müssen sie qualifiziert sein, um die Operandendatengröße, 32 Bit oder 64 Bit, und die Datengröße des Befehls anzugeben. Wenn die Datengröße 32 Bit beträgt, werden die unteren 32 Bit des Registers ve…“
- 08:5708:57, 26. Sep. 2024 Unterschied Versionen −39 Bytes K ARMv8-Übersicht Keine Bearbeitungszusammenfassung
- 08:4708:47, 26. Sep. 2024 Unterschied Versionen +54 Bytes K ARMv8-Übersicht Keine Bearbeitungszusammenfassung
- 08:4008:40, 26. Sep. 2024 Unterschied Versionen +212 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung aktuell
- 08:3108:31, 26. Sep. 2024 Unterschied Versionen +485 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung
- 08:0608:06, 26. Sep. 2024 Unterschied Versionen −16 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung
- 07:5207:52, 26. Sep. 2024 Unterschied Versionen +152 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung
- 07:4607:46, 26. Sep. 2024 Unterschied Versionen +24 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung
- 07:4107:41, 26. Sep. 2024 Unterschied Versionen −682 Bytes K Bedingungscodes Keine Bearbeitungszusammenfassung
- 07:2507:25, 26. Sep. 2024 Unterschied Versionen +2.132 Bytes N Bedingungscodes Die Seite wurde neu angelegt: „In der Archektetur des ARMv8 gibt es Befehle, die Bedingungsflags setzen oder Bedingungscodes oder beides testen. Zu den jeweiligen Befehlen wird darauf eingegangen, wenn diese Befehle dies unterstützen. Hier ist eine Auflistung der Bedingungscodes, die verwendet werden: Code Bedeutung (Ganzzahl) Bedeutung (Gleitkomma) Bedingungsflags {| class="wikitable" |+ Bedingungscodes |- ! Code !! Bedeutung (Ganzzahl) !! Bedeutung (Gleitkomma) !! Bedingungsflags |…“
- 07:1607:16, 26. Sep. 2024 Unterschied Versionen +30 Bytes K Hauptseite →Anhang
- 07:1507:15, 26. Sep. 2024 Unterschied Versionen +8 Bytes K Grundlegende Befehle Keine Bearbeitungszusammenfassung aktuell
- 07:1507:15, 26. Sep. 2024 Unterschied Versionen +30 Bytes N ARMv8-Übersicht Die Seite wurde neu angelegt: „Inhalt: * Bedingungscodes“
- 07:1407:14, 26. Sep. 2024 Unterschied Versionen +138 Bytes K Grundlegende Befehle Keine Bearbeitungszusammenfassung
24. September 2024
- 12:0012:00, 24. Sep. 2024 Unterschied Versionen +16 Bytes K Grundlegende Befehle →Grundlegende Befehle für 64-BitAssembler
- 11:4211:42, 24. Sep. 2024 Unterschied Versionen +91 Bytes K Schleifen in Assembler Keine Bearbeitungszusammenfassung aktuell
- 11:3911:39, 24. Sep. 2024 Unterschied Versionen +238 Bytes K C nach Assembler Keine Bearbeitungszusammenfassung aktuell
- 11:3511:35, 24. Sep. 2024 Unterschied Versionen +117 Bytes K Strukturen in Assembler →Erklärung der Makros aktuell
- 11:3311:33, 24. Sep. 2024 Unterschied Versionen +39 Bytes K Strukturen in Assembler →Erklärung
- 11:2911:29, 24. Sep. 2024 Unterschied Versionen +666 Bytes K Strukturen in Assembler Keine Bearbeitungszusammenfassung
- 11:1311:13, 24. Sep. 2024 Unterschied Versionen +6.554 Bytes N Strukturen in Assembler Die Seite wurde neu angelegt: „Strukturen (structs) sind in C ein wesentlicher Bestandteil zur Organisation und Gruppierung von Daten. In ARM64-Assembler können Strukturen durch die Offsets der einzelnen Felder simuliert werden. Hier ist eine Erklärung, wie man Strukturen in ARM64-Assembler umsetzt, einschließlich der Handhabung von verschachtelten Strukturen. Grundlagen Eine Struktur in C kann in ARM64-Assembler dargestellt werden, indem man die Offsets der einzelnen Mitglieder de…“
- 09:4509:45, 24. Sep. 2024 Unterschied Versionen −2 Bytes K Schleifen in Assembler →for-Schleife
- 09:4309:43, 24. Sep. 2024 Unterschied Versionen −2 Bytes K Schleifen in Assembler →while-Schleife
- 09:4309:43, 24. Sep. 2024 Unterschied Versionen +2.682 Bytes N Schleifen in Assembler Die Seite wurde neu angelegt: „Schleifen sind in der C-Programmierung ein grundlegendes Konstrukt zur wiederholten Ausführung eines Codeblocks. Die wichtigsten Schleifentypen in C sind '''for''', '''while''' und '''do-while'''. Hier zeige ich, wie du diese Schleifen in ARM64-Assembler umsetzen kannst. == for-Schleife == C-Code: <syntaxhighlight lang="C"> for (int i = 0; i < 10; i++) { // Schleifenrumpf } </syntaxhighlight> ARM64-Assembler: <syntaxhighlight lang="asm"> mov w0,…“
- 09:2009:20, 24. Sep. 2024 Unterschied Versionen +241 Bytes K C nach Assembler →Tools
- 09:1109:11, 24. Sep. 2024 Unterschied Versionen +26 Bytes K C nach Assembler →Tools
- 09:1009:10, 24. Sep. 2024 Unterschied Versionen +394 Bytes K C nach Assembler Keine Bearbeitungszusammenfassung
- 08:5908:59, 24. Sep. 2024 Unterschied Versionen −92 Bytes K C nach Assembler Keine Bearbeitungszusammenfassung
- 08:2608:26, 24. Sep. 2024 Unterschied Versionen +4.750 Bytes N C nach Assembler Die Seite wurde neu angelegt: „Das Übersetzen von C-Code in Assembler (insbesondere für die ARM64-Architektur) erfordert einige spezifische Kenntnisse und Überlegungen. Hier sind einige wichtige Aspekte, die dabei beachtet werden sollten: 1. Grundlagen der ARM64-Architektur: Registers: ARM64 hat 31 allgemeine Register (x0 bis x30) und ein spezielles Stack-Pointer-Register (sp). Beachte, dass x0 bis x7 oft für Funktionsparameter und Rückgabewerte verwendet werden. Instruktionssatz…“
- 08:1808:18, 24. Sep. 2024 Unterschied Versionen +206 Bytes K Make →Fazit aktuell
- 08:1608:16, 24. Sep. 2024 Unterschied Versionen +238 Bytes K Objdump →Fazit aktuell
- 08:1508:15, 24. Sep. 2024 Unterschied Versionen +246 Bytes K Ld (Linker) →Zusammenfassung aktuell
- 08:1408:14, 24. Sep. 2024 Unterschied Versionen +250 Bytes K GNU Debugger →Fazit aktuell