|
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, ... |
|