Accueil > Forum > > > > Peut on comparer deux binaire avec cmp ?
Peut on comparer deux binaire avec cmp ?
mardi 12 août 2003 à 14:30:00 |
Peut on comparer deux binaire avec cmp ?

MrNice
|
Lo le forum me revoila ave cun new prob... donc en fait g une table de variable, je prends al=0 je fait un xlat et je compare ce resultat avec une entrée qui est aussi en binaire (provenant d'un ppi) donc je boucle jusqu à ce que l entrée soit egale a un nombre de mon tableau alors pour comparer je fait un cmp al,dl en sachant que al,dl sont en binaires.. alors est possible ? voici une partie d emon code source... .386 .DATA ;Zone de définition des variables ZERO db 00000000b UN db 00000001b DEUX db 00000010b TROIS db 00000011b QUATRE db 00000100b CINQ db 00000101b SIX db 00000110b SEPT db 00000111b MESS1 db 'CODE SWITCH :$' .CODE ;ouverture du segment de code DEBUT: mov ax,DGROUP mov ds,ax ECRIO CTRL,CONFIG bo1: ECRIO PA,ZERO ;eteint tout les leds LECPPI PB ;le resultat se trouve dans al mov bl,al ;le resultat se trouve maintenant dans bl mov cx,8 ;cx=8 = nbr de nbr contenu dans la table xor eax,eax ;al=0 pour demarer au debut de la table avec xlat bo2: xlat ZERO ;al=table+al /!\ cmp bl,al ;compare al à bl /!\ EST CE POSSIBLE je ok ;si1 al=bl -> jump ok inc al ;sinon on incremente al loop bo2 ;et on boucle jusqu à ce que al=bl ok: ;cas ou al=bl ECRIO PA,al ;allume les leds correspondantes AFFICH MESS1 ;affiche "CODE SWITCH :" AFFICHNUM al ;affich le nombre a l'ecran AFFICH CRLF ;on passe a la ligne mov ah,06h ;lecture de caractère sans marquer d arret mov dl,ffh ;lecture car dl=ffh sinon sortie du caractère dont le code ascii est dans dl int 21h cmp al,'s' ;verifie si le caratère = 's' jne bo1 ;si caractère != 's' -> jmp bo1 ECRIO PA,ZERO ;sinon etient les leds mov ax,4c00h ;et on quit le programme int 21h end Debut
|
|
|
mercredi 13 août 2003 à 12:32:05 |
Re : Peut on comparer deux binaire avec cmp ?

Kaid
|
En fait ca ne pose aucun problème car le compilateur travaille dans une seule base. Les représentations binaire, décimal, octal, héxadécimal sont justes là pour aider le développeur. Kaid - kaid.fr.st------------------------------- Réponse au message : ------------------------------- > Lo le forum me revoila ave cun new prob... > > donc en fait g une table de variable, je prends al=0 je fait un xlat et je compare ce resultat avec une entrée qui est aussi en binaire (provenant d'un ppi) donc je boucle jusqu à ce que l entrée soit egale a un nombre de mon tableau alors pour comparer je fait un cmp al,dl en sachant que al,dl sont en binaires.. alors est possible ? > > voici une partie d emon code source... > > > > .386 > .DATA > > ;Zone de définition des variables > ZERO db 00000000b > UN db 00000001b > DEUX db 00000010b > TROIS db 00000011b > QUATRE db 00000100b > CINQ db 00000101b > SIX db 00000110b > SEPT db 00000111b > MESS1 db 'CODE SWITCH :$' > > .CODE > ;ouverture du segment de code > > DEBUT: mov ax,DGROUP > mov ds,ax > ECRIO CTRL,CONFIG > > bo1: > ECRIO PA,ZERO ;eteint tout les leds > LECPPI PB ;le resultat se trouve dans al > mov bl,al ;le resultat se trouve maintenant dans bl > mov cx,8 ;cx=8 = nbr de nbr contenu dans la table > xor eax,eax ;al=0 pour demarer au debut de la table avec xlat > > bo2: > xlat ZERO ;al=table+al > /!\ cmp bl,al ;compare al à bl /!\ EST CE POSSIBLE > je ok ;si1 al=bl -> jump ok > inc al ;sinon on incremente al > loop bo2 ;et on boucle jusqu à ce que al=bl > > ok: ;cas ou al=bl > ECRIO PA,al ;allume les leds correspondantes > AFFICH MESS1 ;affiche "CODE SWITCH :" > AFFICHNUM al ;affich le nombre a l'ecran > AFFICH CRLF ;on passe a la ligne > mov ah,06h ;lecture de caractère sans marquer d arret > mov dl,ffh ;lecture car dl=ffh sinon sortie du caractère dont le code ascii est dans dl > int 21h > cmp al,'s' ;verifie si le caratère = 's' > jne bo1 ;si caractère != 's' -> jmp bo1 > ECRIO PA,ZERO ;sinon etient les leds > mov ax,4c00h ;et on quit le programme > int 21h > end Debut > |
|
|
jeudi 14 août 2003 à 20:19:53 |
Re : Peut on comparer deux binaire avec cmp ?

CoreBreaker
|
Si tu parler du format dans ton source: 12h equivaut à 18d qui équivaut aussi à 00010010b. bref que tu fasses cmp al, 41h ou cmp al, 00100001b ou cmp al, 65 ou encode cmp al, 'A' ça revient au même exactement au même car ce sont les même nombres. Core Breaker 
|
|
jeudi 6 janvier 2005 à 10:50:56 |
Re : Peut on comparer deux binaire avec cmp ?

misterzinzin
|
bo2: > xlat ZERO ;al=table+al > /!\ cmp bl,al ;compare al à bl /!\ EST CE POSSIBLE > je ok ;si1 al=bl -> jump ok > inc al ;sinon on incremente al > loop bo2 ;et on boucle jusqu à ce que al=bl
...c'est pas un peu con d'utiliser des xlat dans un tableau avec des valeur qui se suivent ?
si al=0 et xlat zero... al=0
si al=1 et xlat zero... al=1
.... je vois pas trop l'utilité de xlat dans ce cas lol
moi j'aurais plutot fait:
mov al,-1
bo2:
inc al
cmp bl,al
jne bo2
... le meme code sans Xlat avec plein de valeur dans le .data...
maintenant ca se peut que je me soit planté et que j'aie pas compris le but de ton code  moi, le seul, l'unique, ZinZin 
|
|
Cette discussion est classée dans : code, db, mov, bl, al
Répondre à ce message
Sujets en rapport avec ce message
Multiplication de deux nombres compris entre 0 et 99 en assembleur [ par petitspirou ]
salut, j'ai un programme a faire mais je suis nul en assembleur, voici ce que j'ai fais mais ca ne fonctionne pas.Quelqun peut'il me le corriger et me
Recuperer le mode Video [ par FearBlue ]
Slt a tous !!!!!!!Je souhaite recupérer le mode video g lus dans une doc ca :Cette fonction retourne le numéro de code du mode vidéo en cours et tient
Affichage de l'heure a partir du BIOS [ par FearBlue ]
Slt a tous !!!!Je debute en ASM et je desirerais afficher l'heure a partir de la lecture de l'heure du biosje vous montre mon code !!!!
pb int 21h ah=0ah [ par mat74 ]
salut a ts ,voila j'ai fais un programme qui est censé lire une chaine entré par l'utilisateur et ensuite la reafficher . Il me demande bien d'entré u
inversion de l'ordre d'uns string [ par VBFRANCE ]
Je suis un jeune debutant dans l'assembleur.J'ai un petit prog pour afficher les valeur sous format binaire, mais je suis bloquer par un petit soucis.
couleur en TASM ? [ par redwings ]
j'aimerai savoir les instructions qui permettent d'affiche un caractere en couleurAL contient le caractere ...MOV DL,AL MOV AH,02hINT 21h...merci
secteur boot : afficher un message [ par sajaris ]
bonjourje suis ADABLA et je debute en OS, il y a 1 semaine. je voudrai SVP, votre avis sur mon petit code de boot.En fait je voudrai afficher un messa
Modifer le vecteur d'interruptions [ par vecchio56 ]
Bonjour J'essaie de refaire la source http://www.cppfrance.com/code.aspx?ID=33558 en assembleur (ca consiste à modifier la routine de l'interruption 0
probleme avec un bootloader [ par anonyme_man_in_this_world ]
salut !! je voudrais coder un bootloader , tous ce compile bien ,je copie / colle le fichier .BIN dans une disquette ,mais lors le redemmarrage d
Peut on mieux faire ? [ par spiky31 ]
Bonjour Voila j'ai commencé ce matin a programmer en assembleur intel et j'aurais voulu avoir votre avis (Je me considére pas vraiment comme un noob
Livres en rapport
|
Derniers Blogs
[MIX 2010] - TELECHARGEZ INTERNET EXPLORER 9 EN PREVIEW ![MIX 2010] - TELECHARGEZ INTERNET EXPLORER 9 EN PREVIEW ! par redo
La Preview de Windows Explorer 9 est maintenant disponible à l'adresse suivante : http://ie.microsoft.com/testdrive/ Cette version ne nécessite pas un redémarrage de votre machine pour être exploitée . Cette version est fonctionnelle mais reste cependant ...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - KEYNOTE DAY 2 ONLINE : WINDOWS INTERNET EXPLORER 9, JQUERY, ODATA ET DALLAS CTP2 ![MIX 2010] - KEYNOTE DAY 2 ONLINE : WINDOWS INTERNET EXPLORER 9, JQUERY, ODATA ET DALLAS CTP2 ! par redo
Dans la lignée du premier keynote, retrouvez la vidéo du second keynote en ligne : Visionnez la vidéo à l'url suivante : http://www.microsoft.com/presspass/events/mix/VideoGallery.aspx Vous y retrouverez ainsi les speakers Scott Guthrie, Dean Hachamovitch...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - RETOUR D'EXPéRIENCE DéVELOPPEMENT SEESMIC SUR WINDOWS PHONE 7[MIX 2010] - RETOUR D'EXPéRIENCE DéVELOPPEMENT SEESMIC SUR WINDOWS PHONE 7 par redo
En avant première, Loic le retour d'expérience de Loïc Le Meur du portage de l'application http://seesmic.com/ sur plateforme Windows Phone 7 . c'était d'ailleurs une des rares opportunités de tester, voir toucher le nouveau device . voyez par vous-même :...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - LE KEYNOTE DAY 1 DISPONIBLE ONLINE ![MIX 2010] - LE KEYNOTE DAY 1 DISPONIBLE ONLINE ! par redo
Si tout comme moi, vous avez manqué de peu le premier keynote du Microsoft Mix 2010, je vous invite à prendre deux heure et le consulter ci-dessous . Visionnez le Keynote à l'url suivante : http://www.microsoft.com/Presspass/events/mix/videoGallery.aspx?c...
Cliquez pour lire la suite de l'article par redo VISUAL STUDIO TALK SHOW: EF4VISUAL STUDIO TALK SHOW: EF4 par Matthieu MEZIL
La semaine dernière, j'étais à Montréal pour y animer des conférences sur Entity Framework. J'en ai profité pour enregister un podcast Visual Studio Talk Show que vous pouvez retrouver ici ....(read more) ...
Cliquez pour lire la suite de l'article par Matthieu MEZIL
Forum
RE : CSHARPRE : CSHARP par ghuysmans99
Cliquez pour lire la suite par ghuysmans99 CSHARPCSHARP par nano16
Cliquez pour lire la suite par nano16
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|