View Full Version : [assembly] Testare programma
shane007
12-07-2013, 13:14
Premetto che sto ri-iniziando a programmare in assembly dopo molti anni...
Volevo chiedere se sapevate consigliarmi un emulatore per eseguire programmi scritti con sintassi AT&T.
Mi ricordo che una volta utilizzavo EMU8086, ma adesso non mi va più bene perché adesso dovrei programmare in x86, quindi a 32 bit.
PS: uso windows 7 - 8
The_ouroboros
12-07-2013, 13:21
Premetto che sto ri-iniziando a programmare in assembly dopo molti anni...
Volevo chiedere se sapevate consigliarmi un emulatore per eseguire programmi scritti con sintassi AT&T.
Mi ricordo che una volta utilizzavo EMU8086, ma adesso non mi va più bene perché adesso dovrei programmare in x86, quindi a 32 bit.
PS: uso windows 7 - 8
Domanda magari banale.. Non ti basta una macchina virtuale con dentro freedos?
shane007
12-07-2013, 15:13
Domanda magari banale.. Non ti basta una macchina virtuale con dentro freedos?
A dir la verità avrei preferito qualcosa come EMU8086 perchè era veramente molto molto comodo e soprattutto aveva un'interfaccia grafica! Questa è la sua interfaccia:
http://img838.imageshack.us/img838/6161/1t7z.png
Dove c'è la finestra con l'output, la finestra che mostra i registri e lo stack e la finestra con il codice.
Era molto comodo anche perché si poteva anche eseguire "istruzione per istruzione" e vedere come cambiavano i valori nei registri e nella memoria.
Purtroppo non posso utilizzarlo perché se provo ad eseguire per esempio (vedi sotto) ovviamente non funziona...
.file "es1.c"
.text
.globl num_odds
.type num_odds, @function
num_odds:
pushl %ebp /* this starts the prolog */
movl %esp, %ebp
pushl %ebx
xorl %eax, %eax /* Function Body */
movl 8(%ebp),%ebx
movl 12(%ebp),%ecx
testl %ecx, %ecx
jz .loop_end
.loop: movl (%ebx), %edx
shrl $1, %edx
jc .next
incl %eax
.next: addl $4,%ebx
decl %ecx
jnz .loop
.loop_end:
popl %ebx
movl %ebp, %esp
popl %ebp
ret
Esiste ancora qualcosa cosi?
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.