>> Tecnologia elettronica >  >> Audio domestico >> Amplificatori & preamplificatori

Formati e Modalità di Indirizzamento delle Istruzioni ARM7: Chiarimenti

Set di Istruzioni ARM7TDMI: Formati vs. Modalità di Indirizzamento

L'elenco fornito (Elaborazione Dati, Moltiplica, ecc.) descrive categorie/formati di istruzione, non modalità di indirizzamento. L'ARM7TDMI (ARMv4T) supporta multiple modalità di indirizzamento all'interno di tali formati.

Modalità di Indirizzamento ARM7 (per Load/Store ed Elaborazione Dati)

1. Modalità di Indirizzamento Load/Store (LDR/STR)

Modalità Esempio Sintassi Descrizione
Offset Immediato LDR R0, [R1, #4] Registro base + immediato senza segno 12-bit (0–4095)
Offset Registro LDR R0, [R1, R2] Base + registro (shift opzionale: LSL/LSR/ASR/ROR #n)
Offset Registro Scalato LDR R0, [R1, R2, LSL #2] Base + (registro × 1/2/4/8)
Pre-Indicizzato (Writeback) LDR R0, [R1, #4]! Aggiorna base: R1 ← R1 + offset, poi carica
Post-Indicizzato LDR R0, [R1], #4 Carica da base, poi aggiorna base: R1 ← R1 + offset
Relativo al PC (Literal Pool) LDR R0, =0x12345678 L'assemblatore posiziona la costante in literal pool; carico relativo al PC

2. Indirizzamento Operand2 Elaborazione Dati (Shift)

Usato in ADD, SUB, AND, ORR, EOR, MOV, CMP, ...

Tipo Shift Sintassi Esempio
Immediato (8-bit rotato) #imm MOV R0, #0xFF
Registro (nessuno shift) Rm ADD R0, R1, R2
Shift Logico a Sinistra Rm, LSL #n / Rs ADD R0, R1, R2, LSL #2
Shift Logico a Destra Rm, LSR #n / Rs MOV R0, R1, LSR R2
Shift Aritmetico a Destra Rm, ASR #n / Rs CMP R0, R1, ASR #3
Rotate a Destra Rm, ROR #n / Rs ORR R0, R1, R2, ROR #4
Rotate a Destra Esteso Rm, RRX MOV R0, R1, RRX (rotate 1-bit attraverso Carry)

Categorie di Formato Istruzione (Quello che Hai Elencato)

Le tue 6 categorie sono corrette per gruppi di formato istruzione:

  1. Elaborazione Dati (operazioni ALU: ADD, SUB, AND, EOR, MOV, CMP...)
  2. Moltiplica (MUL, MLA, UMULL, SMULL, UMLAL, SMLAL)
  3. Swap (SWP, SWPB) — accesso memoria atomico
  4. Load/Store (LDR, STR, LDM, STM, LDRH, STRH, LDRSB, LDRSH)
  5. Branch (B, BL, BX, BLX)
  6. Coprocessore / Sistema (CDP, LDC, STC, MCR, MRC, MSR, MRS, SWI/SVC)

Nota: "S.M.L.A" probabilmente si riferisce a Signed Multiply Long Accumulate (SMLAL) o estensioni DSP simili (ARMv5TE). ARM7TDMI non ha SMLA; quello è ARM9E/ARM10E/ARM11.

Indirizzamento Stato Thumb (16-bit)

  1. Come Risolvere gli Errori USB / "Shortage" delle Interfacce M-Audio
  2. Tipi di amplificatori audio
  3. Perché il POST è critico per l'avvio del computer
  4. Posso usare un caricabatterie 5V 1200mA per un dispositivo che richiede 5V 700mA?
  5. Diodo Varactor nella Generazione FM: Sintonia di Frequenza Controllata da Tensione
  6. Microprocessore vs Codice Istruzione: Hardware vs Software