Si scriva un programma in linguaggio assembler che riceva in
input due numeri N e M. Quindi se N>M stampi la sequenza N, N-1, N-2, ..., M+1, M.
altrimenti la sequenza M, M-1, M-2, ..., N+1, N.
Si
illustri anche il contenuto dei registri IR, MAR, MDR, PC e A (accumulatore
ALU) alla fine della esecuzione del programma quando siano dati in input i
valori N=5, M=13.
Lo studente supponga di avere già in memoria
eventuali costanti necessarie al programma e di avere a disposizione le
seguenti istruzioni:
Arithmetic | 1xx | ADD |
2xx | SUB | |
Data Movement | 3xx | STORE |
5xx | LOAD | |
BR | 6xx | JUMP |
BRZ | 7xx | BRANC ON 0 |
BRP | 8xx | BRANCH ON + |
Input/Output | 901 | INPUT |
902 | OUTPUT | |
Machine Control | 000 | HALT |
Si descriva dettagliatamente il funzionamento della cache e motivi del suo utilizzo.
Si descriva il funzionamento dell'input-output tramite interruzioni.
Si descrivano gli stati (operativi) di un processo e si dicano in che modo avvengono i cambiamenti di stato.
Si descrivano dettagliatamente le differenti metodologie di accesso logico ai files.