A voir également:
- Que vaut 1+1 en langage machine
- Time machine - Guide
- Langage ascii - Guide
- Machine virtuelle gratuite - Télécharger - Émulation & Virtualisation
- Débuter langage batch windows - Guide
- Machine virtuelle windows - Guide
7 réponses
jisisv
Messages postés
3645
Date d'inscription
dimanche 18 mars 2001
Statut
Modérateur
Dernière intervention
15 janvier 2017
934
19 janv. 2003 à 04:47
19 janv. 2003 à 04:47
Transformer quoi?
Le code source?
Cela dépend des langages et compilateurs, dans le cas de langages compilés bien sûr.
A titre d'exemple en C
jd@horus c]$ cat cls.c
#include <stdio.h>
int main(void)
{
printf("%c[2J", 0x1B);
return 0;
}
[jd@horus c]$ gcc -S cls.c ; cat cls.s
.file "cls.c"
.version "01.01"
gcc2_compiled.:
.section .rodata
.LC0:
.string "%c[2J"
.text
.align 16
.globl main
.type main,@function
main:
pushl %ebp
movl %esp, %ebp
subl $8, %esp
subl $8, %esp
pushl $27
pushl $.LC0
call printf
addl $16, %esp
movl $0, %eax
movl %ebp, %esp
popl %ebp
ret
.Lfe1:
.size main,.Lfe1-main
.ident "GCC: (GNU) 2.96 20000731 (Mandrake Linux 8.1 2.96-0.62mdk)"
L'exécutable ou la bibliothèque?
Tu utilises un désassembleur ou un debugueur.
Johan Daine
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
Le code source?
Cela dépend des langages et compilateurs, dans le cas de langages compilés bien sûr.
A titre d'exemple en C
jd@horus c]$ cat cls.c
#include <stdio.h>
int main(void)
{
printf("%c[2J", 0x1B);
return 0;
}
[jd@horus c]$ gcc -S cls.c ; cat cls.s
.file "cls.c"
.version "01.01"
gcc2_compiled.:
.section .rodata
.LC0:
.string "%c[2J"
.text
.align 16
.globl main
.type main,@function
main:
pushl %ebp
movl %esp, %ebp
subl $8, %esp
subl $8, %esp
pushl $27
pushl $.LC0
call printf
addl $16, %esp
movl $0, %eax
movl %ebp, %esp
popl %ebp
ret
.Lfe1:
.size main,.Lfe1-main
.ident "GCC: (GNU) 2.96 20000731 (Mandrake Linux 8.1 2.96-0.62mdk)"
L'exécutable ou la bibliothèque?
Tu utilises un désassembleur ou un debugueur.
Johan Daine
The software said "Requires Windows98, Win2000, or better,
So I installed Unix.
Merci d'avoir répondu!
En fait je dois créer une "machine à pile" qui récupère un fichier ds lequel est écrit un prog en assembleur et génère un fichier texte où est stocké le programme en langage machine. Je dois utiliser le C.
le code:
pop x
popI
push# i
push X
pushI
dup
op i
call adt
ret
jmp adr
jpc adr
read x
write x
halt
c tout ce qu'on m'a donné, je débute à peine...
En fait je dois créer une "machine à pile" qui récupère un fichier ds lequel est écrit un prog en assembleur et génère un fichier texte où est stocké le programme en langage machine. Je dois utiliser le C.
le code:
pop x
popI
push# i
push X
pushI
dup
op i
call adt
ret
jmp adr
jpc adr
read x
write x
halt
c tout ce qu'on m'a donné, je débute à peine...
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
sebsauvage
Messages postés
32893
Date d'inscription
mercredi 29 août 2001
Statut
Modérateur
Dernière intervention
21 octobre 2019
15 655
20 janv. 2003 à 10:01
20 janv. 2003 à 10:01
C'est pour transformer un source en assembleur en langage machine, c'est ça ?
Un truc du genre .ASM --> .EXE / .COM ?
Alors il te faut un assembleur:
NASM, A86, TASM (Borland), MASM (Microsoft)...
Un truc du genre .ASM --> .EXE / .COM ?
Alors il te faut un assembleur:
NASM, A86, TASM (Borland), MASM (Microsoft)...
Bonjour,
à vous!
Moi je vous conseil Fasm un nouveau assembleur...
Dans Fasm, il y a un petite programme qui fais ça pour toi...
De transformer L' assembleur en Language C et le contraire ; Le C en assembleur...
à vous!
Moi je vous conseil Fasm un nouveau assembleur...
Dans Fasm, il y a un petite programme qui fais ça pour toi...
De transformer L' assembleur en Language C et le contraire ; Le C en assembleur...