Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni
Redmi Pad 2 9.7 punta su un display ampio e fluido, una batteria capace di accompagnare l'uso quotidiano senza ansie da ricarica e un prezzo accessibile, a partire da 179,90 euro per la versione con 64 GB di storage. Lo Snapdragon 6s 4G Gen 2 e i 4 GB di RAM della configurazione più diffusa frenano però chi cerca reattività e multitasking spinto: ecco il bilancio dopo due settimane di prova diretta
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Peugeot Polygon Concept: ecco il futuro delle utilitarie
Polygon è la concept car di Peugeot che mostra il futuro delle soluzioni del segmento B: tra design compatti e innovativi affiancati da dimensioni compatte uno scherzo dalla manovrabilità incredibile per le manovre a bassa velocità
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione
OPPO ha portato in Italia, dal 1° luglio 2026, Reno16 Pro: display AMOLED da 6,32 pollici a 144Hz, tripla fotocamera con sensore principale da 200 megapixel, chip Dimensity 8550 Super e batteria da 6000mAh, al prezzo di lancio di 899 euro. Lo abbiamo provato per due settimane insieme al nuovo accessorio Bubble, per capire se la formula compatta della serie regge ancora di fronte a un listino da 1099 euro
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 10-09-2012, 18:03   #1
v1sc3rr4k
Member
 
Iscritto dal: Nov 2007
Messaggi: 69
[ASSEMBLY] Riconoscere variabili

Salve a tutti,

ho dei sorgenti asm e ho bisogno di identificare le variabili, io da ignorante in materia pensavo le uniche variabili fossero i registri. In realtà approfondendo ho capito che ci sono diversi modi per maneggiare variabili con l'x86. Volevo chiedere a voi qualche dritta, io devo controllare i movimenti anomali delle variabili e un'idea ce l'ho. Il problema è che prima di farlo devo individuarle nei files *.asm!

Grazie a tutti
v1sc3rr4k è offline   Rispondi citando il messaggio o parte di esso
Old 10-09-2012, 19:19   #2
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
No aspè, chiariamo. Le variabili per il processore non esistono. Lui vede solo locazioni di memoria.

Esiste però un modo di definire le variabili in assembly. Ma questo vale quando scrivi tu un programm assembly. Sono quelle cose definite con db, dw, ecc...

Se invece, come sospetto di aver capito, hai in mano dei file disassemblati da un binario, allora non ci sarà nulla nei sorgenti che sintatticamente rasenterà il concetto di variabile.

Vedrai solo dei dati che vengono spostati avanti e indietro in memoria, sommati, divisi, ecc....

Le uniche variabili "visibili" sono quelle locali, perchè vengono memorizzate nello stack frame corrente.

I registri invece non sono variabili, almeno non nel senso classico del termine. Contengono valori, li puoi usare per fare operazioni, leggere/scrivere valori, ma non sono variabili.
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 10-09-2012, 19:32   #3
v1sc3rr4k
Member
 
Iscritto dal: Nov 2007
Messaggi: 69
Grazie della risposta, seguendo i tuoi consigli ho riletto il codice notando questo:

Quote:
db 002Eh
db 0081h
xorpatch db 0007h
encryptvalue dw 0000h
Ora il problema è che le prime due variabili non hanno nome! Come è possibile?
v1sc3rr4k è offline   Rispondi citando il messaggio o parte di esso
Old 10-09-2012, 20:29   #4
pabloski
Senior Member
 
Iscritto dal: Jan 2008
Messaggi: 8406
Il motivo è legato al fatto che in linguaggio macchina le variabili ( non locali ) corrispondono a locazioni di memoria. Il nome è una semplice etichetta che serve a facilitare la vita al programmare e gli permette di riferirsi ad una certa locazione di memoria usando un nome facile da ricordare.

Per esempio, le prime due istruzioni riservano 16 e 16 bit in memoria. Quei valori li troverai effettivamente in memoria, ma nel codice assembly non potrai riferirti a quelle locazioni di memoria usando un nome simbolico facile da ricordare.

Dal punto di vista della macchina quelle 4 sono uguali, dal punto di vista del programmatore no.
pabloski è offline   Rispondi citando il messaggio o parte di esso
Old 11-09-2012, 10:35   #5
v1sc3rr4k
Member
 
Iscritto dal: Nov 2007
Messaggi: 69
Giusto dimenticavo questo particolare. Grazie mille dei chiarimenti
v1sc3rr4k è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Redmi Pad 2 9.7: ampio display, economico e peso contenuto, ma qualche limite nelle prestazioni Redmi Pad 2 9.7: ampio display, economico e peso...
Peugeot Polygon Concept: ecco il futuro delle utilitarie Peugeot Polygon Concept: ecco il futuro delle ut...
Reno16 Pro: il compatto di OPPO punta su fotocamera da 200MP e il nuovo Bubble! La recensione Reno16 Pro: il compatto di OPPO punta su fotocam...
 Hisense 55U7SE: tuttofare e accessibile, il MiniLED per film, sport e gioco Hisense 55U7SE: tuttofare e accessibile, il Min...
Kindle Scribe Colorsoft: riduce le cornici e diventa a colori, ma il prezzo è alto Kindle Scribe Colorsoft: riduce le cornici e div...
Agenti IA: consumo di energia fino a 136...
Windows 11 arriva ufficialmente su Steam...
NVIDIA Vera conquista Perplexity: il nuo...
Record per il drone solare italiano Guar...
Samsung PM1763, il nuovo SSD PCIe 6.0 pe...
Nasce Sky Nomad, la nuova gamma di Xiaom...
Microsoft inizia a sostituire OpenAI e A...
Acer Nitro V 15 con RTX 5060 e Intel Cor...
id Software dimezzata, tagli in Bethesda...
Claude non scrive tutto quello che pensa...
Volete un MacBook Pro con chip M5 Pro sc...
WhatsApp amplia le funzioni su WearOS: o...
TV TCL da 75 pollici a 549,90€: 4K HDR e...
Gli elettori americani chiedono a Claude...
Offerte Amazon PC, pioggia di sconti su ...
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: 13:25.


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