Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Dalle quintuple all'assembly

Precedente
SUPERIORE
Successiva

Le quintuple sono poco leggibili!

00H1n
01H0n

Nello stato 0 si possono verificare due eventi diversi

0: se (0) allora scrivi 1 e vai in H
   se (1) allora scrivi 0 e vai in H
H: Halt

Si possono semplificare le istruzioni? Sequenzialità

0: se (0) allora scrivi 1 e vai in 2
1: se (1) allora scrivi 0
2: Halt

L'istruzione se… può solo "cambiare stato" in modo condizionato/incondizionato; scrivi e vai diventano singole

0: se (1) allora vai in 2
1: se (0) allora vai in 4
2: scrivi 0
3: vai in 5
4: scrivi 1
5: Halt

In Inglese

0: JUMPGREATERTHANZERO 2
1: JUMPEQUALZERO 4
2: OUTPUT 0
3: JUMP 5
4: OUTPUT 1
5: HALT

Abbreviando: Codici Mnemonici

0: JGT 2
1: JEQ 4
2: OUT 0
3: JMP 5
4: OUT 1
5: ALT

Nomi simbolici per gli "stati": le istruzioni diventano delle triple: Indirizzo, Codice Mnemonico e Indirizzo/dato

      JGT Zero
      JEQ Uno
Zero  OUT 0
      JMP Fine
Uno   OUT 1
Fine  ALT

Nomi simbolici per i "dati": le istruzioni diventano delle triple: Indirizzo, Codice Mnemonico e Operando

      JGT Zero
      JEQ Uno
Zero  OUT Z
      JMP Fine
Uno   OUT U
Fine  ALT
Z     DAT 0
U     DAT 1
      END

Se le caselle sono parole allora possono rappresentare (con una codifica in binario) numeri e caratteri.

Introduciamo l'A.L.U. (Unità Aritmetica-Logica) che svolge le operazioni più frequenti.

ADD, SUB, MUL, DIV,
INC, DEC,
AND, OR, NOT,
...

Dalle quintuple all'assembly - ApPuNtIdIuNiNfOrMaTiCo

Home • ECDL • Algoritmi • Java • Basi di dati • Seconda prova • Eccetera • Cerca nel sito

Precedente
SUPERIORE
Successiva