Assembleur - C - Programmation
Marsh Posté le 15-04-2005 à 10:29:47
Sunshine and rain, it's all the same, life isn't grayyyyy ohh maryyyy-louuuuu
Marsh Posté le 15-04-2005 à 10:30:46
http://www.commentcamarche.net/asm/assembleur.php3
mais par contre, je vois pas le rapport avec le C
Marsh Posté le 15-04-2005 à 10:36:10
marielou a écrit : Bonjour, |
Aide toi le ciel t'aidera.
Marsh Posté le 15-04-2005 à 10:45:19
En fait, j'ai besoin de comprendre ce que "fait" un programme. C'est pour un cours d'informatique, et je ne comprends rien.
Je comprends les "en gros", parce que j'ai déchiffré ce programme comme si c'était du grec ancien, mais je ne saurais pas dire, en langage naturel, ce que fait le programme.
En fait, j'aurais besoin que quelqu'un féru d'assembleur, me dise "ah, mais c'est simple, le programme fait ça, et ça, et là, il y a une boucle dans laquelle le programme dit :...".
Merci
Marsh Posté le 15-04-2005 à 10:49:02
chrisbk a écrit : Sunshine and rain, it's all the same, life isn't grayyyyy ohh maryyyy-louuuuu |
... ggooood byyyyyye
y a une cat assembleur.
Marsh Posté le 15-04-2005 à 10:56:31
marielou a écrit : Est-ce que je pourrais avoir une aide sur l'assembleur ? |
Meuh ? Quel rapport avec le langage C?
Et c'est quoi "l'assembleur". Il y en a au moins un par architecture...
Et puis, il y a une catégorie ASM sur ce site...
http://forum.hardware.fr/hardwaref [...] _sujet.htm
Marsh Posté le 15-04-2005 à 10:58:30
Poste ici le code que tu veux déchiffrer + la plate forme sur laquelle c'est censé tourner
Marsh Posté le 15-04-2005 à 11:35:23
ReplyMarsh Posté le 15-04-2005 à 11:38:16
Moktar1er a écrit : Poste ici le code que tu veux déchiffrer + la plate forme sur laquelle c'est censé tourner |
'tain c'est Dingue: Polnareff est plus fort que Nostradamus: il l'avait prédit:
Citation : Message électrique quand elle m'éléctronique |
Par contre, c'est le multi de qui, ça je sais pas...
Marsh Posté le 15-04-2005 à 11:38:20
Voilà le code....
.file1 "insert.c"
.data
str: .asciiz "\n"
str1: .asciiz "|"
.align 2
# T est le tableau que l'on trie'
T: .word 6
.word 5
.word 4
.word 3
.word 2
.word 1
.word -0
.word -1
.word -2
.word -3
.text
.align 2
.globl main
.ent main
main:
.frame $fp,24,$31
.mask 0xc0000000,-4
.fmask 0x00000000,0
subu $sp,$sp,24
sw $31,20($sp)
sw $fp,16($sp)
move $fp,$sp
# On affiche le vecteur en entree du probleme
la $5,T
li $6,1
suite0:lw $a0, ($5)
li $v0, 1
syscall
li $v0, 4 # system call code for print_str
la $a0, str1 # address of string to print
syscall # print the string
addiu $5,$5,4
addiu $6,$6,1
bne $6,11,suite0
li $v0, 4 # system call code for print_str
la $a0, str # address of string to print
syscall # print the string
syscall
# On commence le tri a partir d'ici
la $5,T
li $6,1
deb:
lw $8,($5) # le min
lw $14,($5)
la $15, ($5)
move $9,$6
addiu $9, $9, 1
la $10, ($5)
la $11, ($5)
addiu $10, $10, 4
suite:
lw $12, 0($10)
blt $8, $12, suite1
lw $8, ($10) # sauvegarde du nouveau min
la $16, ($10) # sauvegarde adresse du nouveau min
# move $a0, $8
# li $v0, 1
# syscall
# li $v0, 4 # system call code for print_str
# la $a0, str1# address of string to print
# syscall # print the string
# la $a0, str # address of string to print
# syscall # print the string
suite1:addiu $10, $10, 4
add $9, $9, 1
bne $9, 11, suite
bgt $8, $14, suite2
bge $8, $14, suite2
move $a0, $8
li $v0, 1
syscall
li $v0, 4 # system call code for print_str
la $a0, str1 # address of string to print
syscall # print the string
move $a0, $14
li $v0, 1
syscall
li $v0, 4 # system call code for print_str
la $a0, str # address of string to print
syscall # print the string
sw $8, ($15)
sw $14, ($16)
suite2: addiu $5, $5, 4 # on passe a l'element suivant
addiu $6, $6, 1 # jusqu'au 9 eme
bne $6,10, deb
# on afficher le vecteur de sortie
li $v0, 4 # system call code for print_str
la $a0, str # address of string to print
syscall # print the string
suite33:la $5,T
li $6,1
suite3: lw $a0, ($5)
li $v0, 1
syscall
li $v0, 4 # system call code for print_str
la $a0, str1 # address of string to print
syscall # print the string
addiu $5,$5,4
addiu $6,$6,1
bne $6,11,suite3
li $v0, 4 # system call code for print_str
la $a0, str # address of string to print
syscall # print the string
j $31
.end main
+*+*+*++*+*+*+*+*+*+*+*+EXEMPLES D'EXECUTION+*+*+*+*+*+*+*+*+*+*+*+*+
-6|-5|-4|-3|-2|-1|0|1|2|3|
-6|-5|-4|-3|-2|-1|0|1|2|3|
+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
6|5|4|3|2|1|0|-1|-2|-3|
-3|6
-2|5
-1|4
0|3
1|2
-3|-2|-1|0|1|2|3|4|5|6|
+*+*+*+*+*+*+*+*+*+*+*+*+*+*+*+
2|-5|-1|-3|7|8|9|10|-4|5|
-5|2
-4|2
-3|-1
2|7
5|8
7|9
8|10
-5|-4|-3|-1|2|5|7|8|9|10|
Marsh Posté le 15-04-2005 à 11:43:41
y'a pas à dire... ASM puxor
Marsh Posté le 15-04-2005 à 11:58:53
++fab a écrit : merde, m'est gouré de chanson ? |
je fredonnais mary lou de Sonata Arctica
Marsh Posté le 15-04-2005 à 12:11:14
chrisbk a écrit : je fredonnais mary lou de Sonata Arctica |
et moi qui vocalisait sur un air de Polnareff
Marsh Posté le 15-04-2005 à 13:48:12
oh, de l'assembleur MIPS
Marsh Posté le 15-04-2005 à 15:37:57
Rebonjour,
j'ai copié le morceau de programme que je dois déchiffrer (voir au-dessus dans un derner message). Oui, c'est du MIPS.
Est-ce que vous pouvez m'aider ?
Merci d'avance !
Marsh Posté le 15-04-2005 à 16:02:28
marielou a écrit : Rebonjour, |
Ben ya les commentaires qui t'expliquent tout dans le source non ?
Marsh Posté le 19-04-2005 à 15:06:14
Bonjour,
je souhaite en fait savoir comment le tri s'effectue. Qu'est-ce que fait exactement le programme à partir de "on commence le tri ici" ?
est-ce quelqu'un pourrait m'aider à décrire ce que fait le programme ?
Merci
marielou
Marsh Posté le 15-04-2005 à 10:27:45
Bonjour,
Est-ce que je pourrais avoir une aide sur l'assembleur ?
Merci
Marielou