|
|||||||
|
|
|
![]() |
|
|
Strumenti |
|
|
#1 |
|
Senior Member
Iscritto dal: Mar 2006
Messaggi: 2056
|
problemino con assembler GAS
Ho una domanda da fare su assembler il GAS per CALCOLATORE C86/32 .
con Codice:
matrix: .fill 16,4,0 Codice:
matrix(%EBX, %ESI, 8) matrix(, %ESI, 8) matrix (%EAX) matrix(%EBX, %ESI) |
|
|
|
|
|
#2 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
Molto semplice. Gas usa questa sintassi
Offset(%Base, %Indice, Moltiplicatore) L'indirizzo finale è dato da Offset + Base + Moltiplicatore * Indice Ovviamente EBX funge da base, ESI da indice e 8 è il moltiplicatore. Nella pratica se ho un vettore di elementi a 64 bit userò 8 come moltiplicatore perchè mi permette, variando l'indice, di scorrere tutto il vettore molto semplicemente incrementando indice di 1. Usando tutti e 4 quegli elementi puoi scorrere facilmente una struct ed eventuali vettori contenuti al suo interno. |
|
|
|
|
|
#3 |
|
Senior Member
Iscritto dal: Jan 2008
Messaggi: 8406
|
p.s. non so quanto tempo hai da dedicare a quest'assembler, ma se ce la fai ti consiglio di leggerti il libro Programming Ground Up che tratta di programmazione sotto linux tramite assembler gas.
http://programminggroundup.blogspot.com/ |
|
|
|
|
| Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 06:25.



















