Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo
Per diversi giorni il Galaxy S26 Ultra di Samsung è stato il nostro compagno di vita. Oltre alle conferme del colosso coreano come la qualità del display e una suite AI senza rivali, arriva il Privacy Display, un unicum nel mondo smartphone. Ci sono ancora alcuni gap che non sono riusciti a colmare lato batteria e fotocamera, seppur con alcuni miglioramenti.
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Diablo II Resurrected: il nuovo DLC Reign of the Warlock
Abbiamo provato per voi il nuovo DLC lanciato a sorpresa da Blizzard per Diablo II: Resurrected e quella che segue è una disamina dei nuovi contenuti che abbiamo avuto modo di sperimentare nel corso delle nostre sessioni di gioco, con particolare riguardo per la nuova classe dello Stregone
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 19-07-2005, 19:34   #1
Sirbako
Senior Member
 
L'Avatar di Sirbako
 
Iscritto dal: Oct 2004
Città: Rovereto (tn)
Messaggi: 2187
[Pseudo assembler] media di un vettore

Sia dato un vettore A memorizzato a partire dalla locazione LA, di dimensione
non nota, che contiene i voti riportati agli esami da uno studente. I voti sono
valori positivi (tra 18 e 30), ciascuno dei quali occupa 1 byte, ed il valore 0 indica
la fine del vettore. Scrivere una subroutine in Assembler (commentata linea per
linea in modo leggibile) che scriva nella locazione di memoria LNESAMI il
numero di esami e nella locazione LMEDIA la media ottenuta. Si descriva anche
la situazione dello stack all’inizio della subroutine.
Il puntatore al vettore A, LA (cioè la locazione di memoria in cui è memorizzato il
primo numero intero), il puntatore LNESAMI alla variabile NESAMI (che contiene
il numero totale di esami sostenuti dallo studente) e il puntatore LMEDIA alla
variabile MEDIA (che contiene la media dei voti degli esami sostenuti dallo
studente) sono passati alla subroutine tramite lo stack, nell’ordine descritto. Si
supponga di avere a disposizione un’istruzione DIV in grado di operare su
numeri in virgola mobile e si considerino le variabili NESAMI e MEDIA espresse
in virgola mobile su 4 bytes. Nel caso lo studente non avesse sostenuto
nemmeno un esame, la sua media è pari a 0.
Ipotesi: i registri a disposizione sono R0, R1 ed R2, ciascuno dei quali presenta
una dimensione pari a 32 bit.
Codice:
stato dello stack:
#0  R2
#4  R1
#8  R0
#12 RETADDRESS
#16 LA
#20 LNESAMI
#24 LMEDIA
Codice:
PUSH R0
PUSH R1
PUSH R2
MOVE #16(SP),R0 //in r0 carica il puntatore del vettore
CLEAR R2 //azzera r1 e r2
CLEAR R1
CMP (RO),#0 //controlla che nn sia stato dato nessun esame 
BRANCH = 0 FINEERR //se è così salta a fineerr
loop:  //ciclo
CMP (RO),#0 //controlla la fine del vettore
BRANCH = 0 FINE
ADD (RO),R1 // somma in r1 il contenuto di r0
ADD #1,R2 //incremetna il contatore
ADD #1,R0 //passa di cella
BRANCH LOOP //salta a loop
fineerr:
MOVE #0,(#24(SP)) //carica 0 nella media
POP R2
POP R1
POP R0
fine: 
DIV R1,R2 // fa la divisione (nn ricordo l'ordine degli operandi)
MOVE R1,(#24(SP)) // sposta i valori nelle celle..
MOVE R2,(#20(SP))
POP R2
POP R1
POP R0

secondo voi è giusto?
__________________

Esse.Ti.?!?
Sirbako è offline   Rispondi citando il messaggio o parte di esso
Old 20-07-2005, 21:47   #2
Sirbako
Senior Member
 
L'Avatar di Sirbako
 
Iscritto dal: Oct 2004
Città: Rovereto (tn)
Messaggi: 2187
su
__________________

Esse.Ti.?!?
Sirbako è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Recensione Samsung Galaxy S26 Ultra: finalmente qualcosa di nuovo Recensione Samsung Galaxy S26 Ultra: finalmente ...
Diablo II Resurrected: il nuovo DLC Reign of the Warlock Diablo II Resurrected: il nuovo DLC Reign of the...
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
La missione cinese Tianwen-3 per portare...
Un satellite di HEO Space ha catturato u...
Mini LED 144Hz a prezzo folle: questo Hi...
Novità per Fortinet: arrivano For...
Volkswagen e Xpeng, il SUV è real...
Volkswagen ribattezza ID.3 e le dà un mo...
Aruba rende disponibile VMware Hosted Pr...
Questa Olympus da 20 MP con stabilizzazi...
Il nuovo dispositivo di Rabbit si chiama...
'Se avete RAM, siamo pronti ad acquistar...
Veeam corregge diverse vulnerabilit&agra...
MacBook Neo segna una svolta per Apple: ...
Polestar pubblica il report LCA di Poles...
Il rame non basta più: NVIDIA, AM...
Velocissimo e consuma poco: ecco il nuov...
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: 20:26.


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