Materiale per Progetto Assembly
del corso di Architettura degli Elaboratori
V.Ghini
Il progetto assembly del corso di architettyra degli elaboratori
richiede di utilizzare un assemblatore (completo di debugger)
per un assembly 8088 con alcune limitazioni.
Tale Assemblatore puo' essere scaricato da questi link
per Linux su Penthium e 80x86, UNIX system su processori little-endian e IntelSolaris (proc. Little Endian)
....... LtlendNx.zip
....... estrarre il software e compilare secondo le istruzioni contenute nel file read_me
per sistemi Windows fino a Windows XP compreso
....... MSWindos.zip
....... estrarre il software e compilare secondo le istruzioni contenute nel file read_me
....... oppure utilizzare gli eseguibili precompilati "as88.exe", "s88.exe" e "t88.exe"
per sistemi Windows Vista e Windows 7
....... PROGETTO Neri_Berardinelli Win.rar
....... estrarre il software e seguire le istruzioni contenute in
Progetto_Neri_Berardinelli_Installazione_e_Utilizzo.pdf
....... per utilizzare l'assemblatore e il tracer nella shell di comandi GHINI_BOX.exe
....... Per ulteriori infrmazioni vedere
PROGETTO_Neri_Berardinelli.pdf
per SPARCSolaris, Apple-MacIntosh X, Apple-Macintosh Linux (proc. Big Endian)
....... BigendNx.zip
....... estrarre il software e compilare secondo le istruzioni contenute nel file read_me
per tutte le altre piattaforme e' necessario generare gli eseguibili ricompilando i sorgenti.
Nelle directory "as_src" e "trce_src" ci sono sorgenti e Makefile per fare cio'.
Per ulteriori informazioni cercare direttamente nel sito del Tanenbaum
....... ftp://ftp.cs.vu.nl/pub/evert
Risoluzione di Errori Noti durante l'utilizzo dell'assemblatore
Qualora durante l'esecuzione dell'assemblatore as80 accada un errore
che fa terminare inaspettatamente il programma as88 stesso
producedo un messaggio d'errore di questo tipo:
*** glibc detected *** ./as88: double free or corruption (!prev):
[vsyscall] Aborted (core dumped)
occorre modificare i sorgenti di as88 come qui di seguito indicato e ricompilarli.
In particolare, editare il file comm4.c della directory as_src
sostituendo a ciascuna istruzione fclose(input);
il seguente blocco di istruzioni if(input!=NULL){ fclose(input); input=NULL; }