Flux rss
Collection CommentCaMarche.net
Rechercher : dans
Par : Pertinence Date Nom d'utilisateur
Statut : Non résolu

Eviter les branchements conditionnels

  Mistermine, le samedi 6 septembre 2008 à 01:51:16
Bonjour,
je debute en programmation assembleur j'ai trouve dans un document une conseil qui s'agit de "EVITER LES BRANCHEMENTS CONDITIONNELS" par exemple :
un programme qui compare deux entiers et affiche le plus grand normalement on utilise un simple "jmp"apres un "cmp" mais dans une autre version qui est ecrite pour optimiser le code n'apas utiliser un jmp voila le code




segment .data
45
message1 db "Entrez un nombre : ",0
6 message2 db "Entrez un autre nombre : ", 0
7 message3 db "Le plus grand nombre est : ", 0
89
segment .bss
10
11 input1 resd 1 ; premier nombre entre
12
13 segment .text
14 global _asm_main
15 _asm_main:
16 enter 0,0 ; routine d'initialisation
17 pusha
18
19 mov eax, message1 ; affichage du premier message
20 call print_string
21 call read_int ; saisie du premier nombre
22 mov [input1], eax
23
24 mov eax, message2 ; affichage du second message
25 call print_string
26 call read_int ; saisie du second nombre (dans eax)
27
28 xor ebx, ebx ; ebx = 0
29 cmp eax, [input1] ; compare le premier et le second nombre
30 setg bl ; ebx = (input2 > input1) ? 1 : 0
31 neg ebx ; ebx = (input2 > input1) ? 0xFFFFFFFF : 0
32 mov ecx, ebx ; ecx = (input2 > input1) ? 0xFFFFFFFF : 0
33 and ecx, eax ; ecx = (input2 > input1) ? input2 : 0
34 not ebx ; ebx = (input2 > input1) ? 0 : 0xFFFFFFFF
35 and ebx, [input1] ; ebx = (input2 > input1) ? 0 : input1
36 or ecx, ebx ; ecx = (input2 > input1) ? input2 : input1
37
38 mov eax, message3 ; affichage du résultat
39 call print_string
40 mov eax, ecx
41 call print_int
42 call print_nl
43
44 popa
45 mov eax, 0
46 leave
47 ret


merci de m'expliquer comment ca marche
Répondre à Mistermine  Signaler ce message aux modérateurs

Résultats pour Eviter les branchements conditionnels

Branchements en assembleur On appelle saut (ou branchement) en assembleur le fait de passer à une instruction autre que celle qui suit celle en cours en mémoire. En effet, en temps normal (c'est-à-dire sans instruction contraire) le processeur exécute les instructions... www.commentcamarche.net/contents/asm/saut.php3
Eviter les doublons dans Excel Eviter les doublons lors d'un encodage dans un colonne de feuille excel: prendre le format conditionnel sur le première cellule sous les titres (par ex A2) choisir la formule suivante : =NB.SI($A$2:$A$21;A2)>1 mettre là la couleur de fond... www.commentcamarche.net/faq/sujet-1258-eviter-les-doublons-dans-excel
[Freebox HD] liaison sans fil avec la télé ? (Résolu) Bonjour, Ma Freebox est relativement loin de ma TV, et je n'ai pas envie de faire courir un fil sur des kilomètres pour relier les 2. Question simple : existe-t-il un "mécanisme" permettant d'éviter le recours à un branchement par câble ?... www.commentcamarche.net/forum/affich-2662397-freebox-hd-liaison-sans-fil-avec-la-tele

Résultats pour Eviter les branchements conditionnels

[Vidéo] Branchement PC-TVIl est relativement simple de relier le PC à la télévision. Branchement Paramétrage Notes Branchement Il faut tout d'abord relier les appareils via un câble S-vidéo du PC à la télévision, puis le son c'est-à-dire la sortie des écouteurs... www.commentcamarche.net/faq/sujet-3018-video-branchement-pc-tv
Eviter les pubsPour éviter les pubs, il faut d'abord s'assurer qu'il n'y a pas de spywares présents sur votre PC. Pour ce faire, un bon scan avec Ad Aware et c'est fait : -->... www.commentcamarche.net/faq/sujet-111-eviter-les-pubs
Césure conditionnelle en HTMLSi vous besoin de contrôler un peu plus précisément la présentation de votre texte justifié dans vos pages web, vous pouvez utiliser un caractère utile. Il s'agit du tiret conditionnel que vous pouvez placer dans les mots pour indiquer aux... www.commentcamarche.net/faq/sujet-9312-cesure-conditionnelle-en-html

Résultats pour Eviter les branchements conditionnels

Mise en forme conditionnelle sous excel 2007 (Résolu)Bonjour, Je ne trouve pas le moyen de faire une mise en forme conditionnelle pour que dans une colonne (A1 et A50), les cellules dont les valeurs sont comprises entre: 0,1 et 9,9 apparaissent en fond rouge 10 et 19,9 apparaissent en fond jaune 20 et... www.commentcamarche.net/forum/affich-3254877-mise-en-forme-conditionnelle-sous-excel-2007
Aide pour branchement cinéma maison (Résolu)Salut a tous, j'aurrais besoin d'aide ou conseils pour résoudre mon probleme de branchement avec mon cinéma maison. je suis tu a la bonne place? www.commentcamarche.net/forum/affich-2904806-aide-pour-branchement-cinema-maison
Besoin de Conseil pour mes branchements audio (Résolu)Bonjour à tous. J'aurais besoin de conseils pour un branchement que je souhaite faire avec 2 baffes de mon ancienne chaine hifi. Je voudrais brancher ces baffes sur mon entrée son de mon PC et aussi pouvoir éventuellement switcher et les mettre... www.commentcamarche.net/forum/affich-2982858-besoin-de-conseil-pour-mes-branchements-audio

Résultats pour Eviter les branchements conditionnels

Les structures conditionnelles avec PhpQu'est-ce qu'une structure conditionnelle? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non, c'est-à-dire si la valeur de son expression vaut 0 ou 1 (le PHP associe le mot clé true à 1... www.commentcamarche.net/contents/php/phpcond.php3
Javascript - Les structures conditionnellesQu'est-ce qu'une structure conditionnelle? On appelle structure conditonnelle les instructions qui permettent de tester si une condition est vraie ou non, ce qui permet notamment de donner de l'interactivité à vos scripts. L'instruction... www.commentcamarche.net/contents/javascript/jscond.php3
Langage C - Les structures conditionnellesQu'est-ce qu'une structure conditionnelle ? On appelle structure conditionnelle les instructions qui permettent de tester si une condition est vraie ou non. Ces structures conditionnelles peuvent être associées à des structures qui se répètent... www.commentcamarche.net/contents/c/ccond.php3