Ti guiderò in assembly language e progetti di organizzazione del computer
Sviluppatore di app per dispositivi mobili
Informazioni su questo servizio
Cosa insegno in questo servizio:
Organizzazione e architettura del computer
- Architettura di Von Neumann e componenti della CPU
- Design dell'ALU, datapath e unità di controllo
- Formati delle istruzioni: R-type, I-type, J-type (MIPS)
- Modalità di indirizzamento: immediato, diretto, indiretto, indicizzato
- Gerarchia della memoria: cache, RAM, basi della memoria virtuale
- Pipelining: fasi, hazard (strutturali, dati, controllo), forwarding
- Prestazioni: CPI, metrica MIPS, legge di Amdahl
- Basi dell'organizzazione I/O
Programmazione in assembly language
- Assembly MIPS
- Assembly x86 MASM con libreria Irvine32 (registri, EFLAGS, stack, procedure)
- Istruzioni di movimento dati, aritmetiche, logiche
- Controllo del flusso: condizionali, cicli, subroutine
- Operazioni sullo stack e chiamate di procedure
- Operazioni con stringhe e gestione ASCII/Unicode
- Concetti di gestione degli interrupt
Progetti di laboratorio
- Scrittura e debug di programmi MIPS
- Progetti x86 MASM
- Comprendere i requisiti del laboratorio e strutturare correttamente il codice
- Commentare e documentare il codice assembly per le consegne
A chi è rivolto:
- Studenti di CS e CE che seguono corsi di Organizzazione del computer, Architettura del computer
- Chi si prepara per una viva, esame di laboratorio o esame di semestre su questi argomenti
Scopo della lezione:
Altro
Tecnologia di sviluppo:
C/C++
•
C#
•
Python
•
Flutter
•
arduino
•
Altro
Il mio portfolio
FAQ
Traduzione automatica.
Lavori sia con MIPS che con x86 MASM?
Sì — sono a mio agio con entrambi. MIPS e x86 MASM (con Irvine32 su Windows) sono i miei ambienti di assembly principali.
La consegna del mio laboratorio è domani. Puoi aiutarmi urgentemente?
Scrivimi prima di ordinare. Spesso gestisco richieste urgenti, soprattutto per sessioni su un solo argomento. Sarò onesto sulla mia disponibilità piuttosto che promettere troppo.
Puoi aiutarmi a capire il compito del laboratorio senza scrivere il codice per me?
In realtà questa è la mia modalità preferita. Ti guiderò attraverso la logica, la struttura e l'approccio — tu scrivi il codice con la mia guida. In questo modo lo capirai anche per la viva.
Quale simulatore o assembler dovrei avere installato prima della sessione?
Per MIPS: scarica MARS (è gratuito, basato su Java, funziona su qualsiasi OS). Per x86 MASM: ti servirà Visual Studio con supporto MASM e la libreria Irvine32, oppure possiamo usare EMU8086. Ti guiderò nella configurazione se necessario — di solito ci vogliono 10 minuti.
Copri concetti di cache memory e memoria virtuale?
Sì — l'organizzazione della cache (direttamente mappata, set-associativa, completamente associativa), tassi di hit/miss e le basi della memoria virtuale e delle tabelle delle pagine sono tutti within scope.
