Torna indietro   Hardware Upgrade Forum > Software > Programmazione

OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum
Abbiamo partecipato all'OVHcloud Summit 2025, conferenza annuale in cui l'azienda francese presenta le sue ultime novità. Abbiamo parlato di cloud pubblico e privato, d'intelligenza artificiale, di computer quantistici e di sovranità. Che forse, però, dovremmo chiamare solo "sicurezza"
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a
Abbiamo potuto mettere le mani in anteprima sul nuovo monitor MSI dedicato ai giocatori: un mostro che adotta un pannello QD-OLED da 26,5 pollici con risoluzione 2560 x 1440 pixel, frequenza di aggiornamento fino a 500 Hz e tempo di risposta di 0,03 ms GtG
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro
DJI aggiorna la sua linea di droni ultraleggeri con Neo 2, un quadricottero da 160 grammi che mantiene la compattezza del predecessore ma introduce una stabilizzazione meccanica a due assi, sensori omnidirezionali e un sistema LiDAR
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 05-11-2001, 19:04   #1
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
ambiente di svilluppo C

Devo scrivere un assemblatore e un simulatore dell'8086. Il mio prof dice che non vale la pena usare il C++ perchè secondo lui è come sparare ad una farfalla con un cannone...devo usare il C. Ho UltraEdit-32, posso configurarlo al meglio per farlo funzionare il sinergia con un compilatore C? Quale compilatore mi consigliate?

Se qualcuno di voi ha fatto questo progetto come esame può darmi qualche dritta e/o links utili?

Grazie mille ragà
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 20:08   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Che intendi per assemblatore ?

Il simulatore non è difficilissimo...è abbastanza meccanico e palloso...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 20:47   #3
misterx
Senior Member
 
Iscritto dal: Apr 2001
Città: Milano
Messaggi: 3736
Quote:
Originariamente inviato da cionci
[b]Che intendi per assemblatore ?

Il simulatore non è difficilissimo...è abbastanza meccanico e palloso...

non mi dire che è una lunga serie di IF.....
misterx è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 21:00   #4
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da misterx
[b]


non mi dire che è una lunga serie di IF.....
Poco di più...se non vuoi fare una serie di if ti fai un file di dati indicizzati che poi carichi in memoria...

Dopo tutto si tratta di :

1) riconoscere l'istruzione (fase di fetch)
2) caricare gli operatori (se ci sono si vede dalla codifica opcode) (fase di load)
3) fare l'operazione implicata dall'istruzione e eventuale lettura/scrittura in memoria o nei registri (fase di execute e di store)

La struttura di memoria è molto semplice....il simulatore si deve tenere 2 buffer di memoria da 64Kbyte ciuascuno...uno per il segmento codice (il codice deve venire subito caricato in memoria, così fa ogni sistema operativo) e uno per i dati...

Un'altra struttura deve contenere i vari registri del processore virtuale...

La parte più lunga è lo studio di come viene formato il codice operativo e di come vengono codificati gli operatori...il + complesso dovrebbe essere il mov...pensare che alle superiori la sapevo a memoria...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:05   #5
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Mi ero dimenticato lo stack segment...altri 64 kb...

Chiaramente se uno vuole aggiungere un supporto all'emulazione più ampio deve permettere il cambio di segmento in runtime...e la condivisione di segmento (come avviene nel modello di memoria Tiny...un solo segmento da 64kb per stack e dati)...

Quindi diciamo che allocando un buffer di 1 Mb per la memoria di sistema si può fare tutto...

Poi se si vuole andare oltre si può prevedere il riconoscimento delle più semplici interruzioni software...per gestire qualche rudimento di I\O...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:28   #6
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
ehm...
io dovrei cominciare con studiare l'architettura dell'8086
cmq l'assemblatore deve operare in 2 passaggi e mi sa tanto che avete ragione: sarà una lunga case...
Il prof non vuole che il sorgente venga caricato tutto in memoria perchè si presume che ad assemblare sia una macchina con poca RAM.
Il simulatore deve tener conto delle istruzioni elementari di I/O (deve saper gestire tastiera e schermo) e non deve simulare il microcodice delle istruzioni.

Posso contare sul vostro aiuto?

Riguardo l'editor e il compilatore C da usare che mi dite?
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:36   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Allora non ho capito...

Cosa intendi per assemblatore e simulatore ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:38   #8
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quote:
Originariamente inviato da antyf
[b]iRiguardo l'editor e il compilatore C da usare che mi dite?
Come compilatore ti consiglio DJGPP...dovrebbe avere anche l'editor integrato...è un compilatore C++, ma credo che tu lo possa usare anche come compilatore C...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:51   #9
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
mi spiego meglio:

dobbiamo realizzare un programma che legge un sorgente assembler per processore 8086 e lo traduce in linguaggio macchina. Successivamente questo programmino in linguaggio macchina deve essere caricato ed eseguito da un altro programma fatto da noi che deve simulare l'esecuzione dell'8086, senza gestire interrupt e routine del sistema operativo (chiaramente) ma gestendo l'I/O della tastiera e del monitor.

Dovrei avere il compilatore C++ della Borland, che scaricai diversi mesi fa dal suo sito, pensi sia buono?

Grazie
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 05-11-2001, 23:58   #10
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Mi manca ancora un punto...il simulatore hai detto che cimula solo i/o...ma le istruzioni in linguaggio macchina del programma assemblato chi le esegue ? Come fai ad interfacciare il simulatore con il programma assemblato ?

Il compilatore Borland va benissimo...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2001, 00:10   #11
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
il simulatore simula ANCHE I/O, le uniche cose che non bisogna simulare sono gli interrupt
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2001, 00:15   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ok...allora sottoscrivo tutto quello che ti ho detto prima...
Per caricare tutto il programma in memoria...intendevo dire che il simulatore deve caricare tutto il programma in memoria...

Per il simulatore alloca 1 Mbyte...che in effetti è tutto lo spazio fisico indirizzabile da un 8086...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2001, 00:46   #13
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
cionci in un post di qualche tempo fa lessi che per un esame avevi scritto un compilatore: per quale linguaggio? quanto tempo ci hai messo?
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 06-11-2001, 00:57   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Era un compilatore C++ un po' ristrestto...

Funzioni con passaggio di parametri, solo interi con aritmetica di base...input e output di base...scope locale o globale delle variabili...

Ci ho emsso circa 2 mesi (lavorandoci una decina di ore settimanali)...ed eravamo in due...

Un assemblatore è molto + semplice...il compilatore deve fare anche un parsing completo...deve riconoscere blocchi a + livelli e roba del genere...l'albero derivato dal parsing può avere una profondità anche notevole...

Su un assemblatore tutte le istruzioni stanno allo stesso livello e come figli hanno i parametri che sono al + due...

Un simulatore lo abbiamo fatto per una CPU didattica...pensa che era scritto in assembler

Assemblatori non ne ho fatti...ma in pratica dovrebbe fare un primo passaggio per sostituire le etichette con gli indirizzi relativi di memoria delle variabili, per indicizzare il codice (associando ad ogni istruzione la sua lunghezza e la posizione nel segmento) e sostituire le etichette di salto con l'indirizzo di salto all'interno del segmento...poi il secondo passaggio deve fare la traduzione vera e propria...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2001, 09:16   #15
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
architettura 8086

mi date dei links per l'architettura dell'8086? mi serve materiale il più approfondito possibile
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2001, 10:29   #16
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
http://www.itassembly.cjb.net/
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2001, 11:04   #17
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
ftp://download.intel.com/support/con...ral/231455.pdf

In fondo a questo documento c'è il codice operativo di ogni istruzione...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 09-11-2001, 12:10   #18
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
Grazie cionci, sei sempre molto disponibile
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
Old 10-11-2001, 09:36   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Niente Fammi sapere come prosegue...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 19-11-2001, 15:45   #20
antyf
Member
 
L'Avatar di antyf
 
Iscritto dal: Aug 2001
Città: quasi vicino Bari
Messaggi: 32
ripesco il topic

Sto vedendo un pò di realizzare la procedura che deve analizzare il sorgente su disco per assemblarlo. Secondo voi è più conveniente leggere una riga alla volta (con quale istruzione?), metterla in una stringa e farci tutti i controlli, oppure leggere un char alla volta e controllare al momento se EOF, \n, " ", ect..?
Sto da 3 ore sulla seconda soluzione ma mi sembra quasi impossibile.
Se potete, mi date una mano?
__________________
Antyf

www.antyf.it
antyf è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


OVHcloud Summit 2025: le novità del cloud europeo tra sovranità, IA e quantum OVHcloud Summit 2025: le novità del cloud...
Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI Care e DisplayPort 2.1a Un mostro da MSI: QD-OLED WQHD a 500 Hz con AI C...
DJI Neo 2 in prova: il drone da 160 grammi guadagna il gimbal e molto altro DJI Neo 2 in prova: il drone da 160 grammi guada...
L'IA "seria" di Appian è diversa: inserita nei processi e rispetta dati e persone L'IA "seria" di Appian è divers...
Polestar 3 Performance, test drive: comodità e potenza possono convivere Polestar 3 Performance, test drive: comodit&agra...
AWS Transform si evolve: agenti IA per m...
I social network hanno stancato gli ital...
Star Citizen supera i 900 milioni di dol...
Netflix ha eliminato la funzione Cast pe...
L'IA è una bolla e scoppier&agrav...
Un rapporto collega i data center di Ama...
Troppa concorrenza per Cherry (quella de...
Entro il 2035 la Cina vuole costruire de...
Tineco in super sconto: ultimo giorno di...
La Cina creerà una costellazione ...
I veicoli elettrici emettono radiazioni ...
Stai per acquistare una PS5? Attento al ...
iPhone 17 Pro Max finalmente disponibile...
Apple, Sony, Bose, Beats, Sennheiser, CM...
Arriva il Raspberry Pi 5 da 1 GB, ma por...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 04:10.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v