Qu'est-JS le faire en assembleur x86?
cmp %al, %cl
js x
Je suis confus sur ce que le js (sauter sur le signe) est en train de faire. Est-ce à dire que si al est positif et cl est négatif vice versa ensuite sauter?
Aussi, ce qui se passe si %de la cl est 0 ou rien n'est en elle?
Merci!
OriginalL'auteur user3128376 | 2014-02-19
Vous devez vous connecter pour publier un commentaire.
JS
va sauter si le signe indicateur est défini (par une instruction antérieure). CMP toujours modifier les indicateurs en effectuant une soustraction, dans ce cas%al - %cl
. (en supposant que Intel syntaxe, pas AT&T).En raison de la longueur des instructions, le signe sera le bit 7 de l'expression %al%cl (et qui est jeté).
Si %cl == 0, alors la valeur temporaire sera %al exactement et le signe est le signe du registre %d'al. Ainsi, un saut est pris, si %al est négatif.
Voici un référence pour tous les sauts conditionnels.
Oui, c'est correct. (sauf pour "al sera moins cl", que j'interprète comme si al a été modifié, alors qu'il ne l'est pas, désolé, je ne suis pas un locuteur natif de l'anglais)
OriginalL'auteur Aki Suihkonen