move files

This commit is contained in:
Klagarge committed 2023-11-21 22:16:42 +01:00
1 parent a0a1aab660
commit 5feafd8877
12 files changed
+50 -11

No files matched your search

+8 -4
View File
@@ -1,5 +1,9 @@
* [ARM](/arm/)
* [PLA - Programmation en langage assembleur](/arm/PLA.md)
* [ASM - Assembleur ARM](/arm/ASM.md)
* [Bachelor](/bachelor/)
* [ARM](/bachelor/arm/)
* [Transmission Process](/bachelor/transmission_process.md)
* [STM32](/STM32/)
* [ARM](/bachelor/arm/)
* [PLA - Programmation en langage assembleur](/bachelor/arm/PLA.md)
* [ASM - Assembleur ARM](/bachelor/arm/ASM.md)
* [Transmission Process](/bachelor/transmission_process.md)
* [STM32](/STM32/)
* [Transmission Process](/transmission_process.md)
-4
View File
@@ -1,4 +0,0 @@
# Taille des paquets de bits
[PLA.md](PLA.md)
[ASM.md](ASM.md)
+1 -1
View File
@@ -26,7 +26,7 @@ Alice <-- Bob: another authentication Response
## load from external files
![kroki-excalidraw](./excalidraw.json)
![kroki-excalidraw](../excalidraw.json)
## Wavedrom
```wavedrom
+33 -2
View File
@@ -43,7 +43,15 @@ A chaque opération mathématique ou logique, l'ALU peut positionner des fanions
Chaque instruction du processeur ARM peut-être exécutée sous condition
- Pour rendre une instruction conditionnelle, il suffit d'ajouter deux lettres à sa mnémonique
- L'opcode de chaque instruction comprend un champ "condition"
![[Pièces jointes/Pasted image 20231120103537.png]]
```packetdiag
packetdiag {
colwidth = 32;
node_height = 15;
28-31: Cond;
}
```
```armasm
CMP r0, r1 ; Update flags based on r0 - r1
ADDGT r0, r0, #4 ; If r0 greater than r1 THEN r0 = r0 + 4
@@ -52,4 +60,27 @@ ADDLT r1, r1, #4 ; IF r0 less than r1 THEN r1 = r1 + 4
; ELSE ADDLT is skipped
```
![[Pièces jointes/Pasted image 20230928151308.png]]
# Instructions de branchement
# Instructions de branchement
## Instruction B
`B{cond} label`
Le champ offset autorise un saut de $\pm$ 32 Mbytes $(2^{24}<<2) /2$
# Carry
Pour déterminer si une opération active le flag de carry, interprétez les deux arguments comme des entiers non signés.
## Addition (inclus CMN)
Le flag `C`est set à $1$ si l'addition produit un carry sinon le flag et set à $0$.
Soit l'addition $x+y$ avec $x$ et $y$ interprété comme entier non signé. Si $x+y$ est trop grand pour être représenté comme un entier de 32 bit, `C` est set à $1$. Si $x+y$ peut être représenté comme un entier de 32 bit, `C` est set à $0$.
## Soustraction (inclus CMP)
Le flag `C` est set à $0$ si la soustraction produit un borrow (p ex. si le résultat en non signé underflow). Sinon le flag est set à $1$.
Soit la soustraction $x-y$ avec $x$ et $y$ interprété comme entiers non signé. Si $x<y$, le résultat devrait être négatif, `C` est set à $0$. Si $x\geq y$, `C` est set à $1$.
$$\begin{align}
x < y &\to C=0 \\
x \geq y &\to C=1
\end{align}$$
File renamed without changes.
+4
View File
@@ -0,0 +1,4 @@
# Taille des paquets de bits
[PLA](/bachelor/arm/PLA.md)
[ASM.md](/bachelor/arm/ASM.md)
File renamed without changes.
+4
View File
@@ -23,6 +23,10 @@
coverpage: false,
autoHeader: true,
loadNavbar: true,
subMaxLevel: 3,
auto2top: true,
mergeNavbar: true,
repo: 'https://git.kb28.ch/Klagarge/Notes',
pagination: {
previousText: {
'/en/': 'PREV',