Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1635 connectés 

 


Dernière réponse
Sujet : [ASSEMBLEUR] Petits exercice pour débutant
Cherrytree OK, cool.

Votre réponse
Nom d'utilisateur    Pour poster, vous devez être inscrit sur ce forum .... si ce n'est pas le cas, cliquez ici !
Le ton de votre message                        
                       
Votre réponse


[b][i][u][strike][spoiler][fixed][cpp][url][email][img][*]   
 
   [quote]
 

Options

 
Vous avez perdu votre mot de passe ?


Vue Rapide de la discussion
Cherrytree OK, cool.
HelloWorld ah, tu veux dire que tu a fait de l'assembleur non x86 depuis ton x86.
La c'est normal, il faut un émulateur
Mais faire de l'assembleur x86 sur un x86, pas besoin d'émulateur puisque ton processeur execute direct le code
tu compiles (ouai ouai assemble ...) et t'obtiens un exe.
Tu le lances et t'oberves ...
Un executable, c'est grossomodo du code assembleur !
Tu peux le déssassembler et voir le source (en assembleur)
Si t'es familier avec la programmation Windows, tu peux faire de l'assembleur 32 bits pour Windows
sinon, ou si t'as envie de bidouiller un peu, tu bosses sous DOS
De ton choix dépend le compilo utilisé : tasm ou tasm32 par exemple ...
Cherrytree Non, en fait j'ai fait de l'assembleur sur 68HC16, qui réclame un émulateur. Mais maintenant, ce que j'aimerai c'est faire de l'assembleur x86. Comme j'en ai jamais fait, je ne sais pas bien ce que cela implique comme engagement (financier, formation). Je me doute qu'il y a des solutions gratuites, mais je ne les connais pas et plus simplement je n'y connais rien en x86. Des tuyaux ? Des conseils ? Des bonnes habitudes à prendre ?
HelloWorld oups, ratage ...
c'est 'a' - 'A' et non l'inverse ... :)
HelloWorld Je crois que cet exo est résolu dans un petit bouquin genre 10 eros (y'a pas la touche euro sur ces clavier de ******)
pour un code plus portable, encore que peut on en parler en assembleur, plutot que d'ajouter 32 (ou 20h), ajoute : 'A' - 'a'
 
ca te donne directement l'ecart majuscule/minuscule, ca marche avec l'ASCII et l'EBCDIC ...
 
de meme quand tu compares la lettre a mettre en majuscule, utilise les lettres directement (si comprise entre a et z mettre en majuscule sinon rien faire ...)
 
par exemple, si AL contient la lettre a mettre en majuscule

Code :
  1. cmp AL, 'A'
  2. au lieu de
  3. cmp AL, 65h


 
 
Cherrytree> j'ai pas compris ta question ... tu fais de l'assembleur via un émulateur alors que tu as un pentium ? Et tu payes ?

k1200 Pour la convertion ca doit fonctioner avec le bit... il y a 32 de diff entre les maj et les minuscule...
 
Pour un compilateur tu peux utiliser celui qui est avec le pascal (je crois que on le trouve gratuitement sur le site de borland) mais je ne me souvient plus du nom...
fabd :)  
 
 :hello:
bjbebert La différence entre majuscule et minuscule, c'est juste un bit (je crois)
- convertir en minuscule : OR 20h (positionne le bit)
- convertir en majuscule : AND DFh (met à 0 le bit)
 
Ca t'évite de faire des conditions.
fabd

k1200 a écrit a écrit :

Ah lala...
 
Pour le 2eme tu teste lettre par lettre si deja en maj et si non tu rajoute la difference qu'il y a dans la table ASCII (les lettres ce suive)  




 
Ah, pas bete :)
 
Les autres idées sont les bienvenues :)

Cherrytree Question : est-ce qu'il y a moyen de faire de l'ASM sans un émulateur, directement sur son pentium ? Gratuitement ?
k1200 Ah lala...
 
Pour le 2eme tu teste lettre par lettre si deja en maj et si non tu rajoute la difference qu'il y a dans la table ASCII (les lettres ce suive)
fabd exo 1
 
Il s'agit de modifier le programme suivant pour qu'il affiche la question "somme nous l'apres midi (O/N) ?"
Le programme lit ensuite une touche au clavier et selon la réponse de l'utilasatieur afficher le message "deja debout de si bon matin !" ou "un bel apres midi ne trouvez vos pas ?"
 
 
DOSSEG
.MODEL small
.STACK 100h
.DATA
 MsgBonjour DB 'Bonjour,monde',13,10,'$'
.CODE
 mov ax, @data
 mov ds,ax
 mov ah,9
 mov dx, OFFSET MsgBonjour
 int 21h
 mov ah,4Ch
 int 21h
END
 
 
Voila pour le 1er exercice.
 
Il a l'air facile a réaliser...
 
Par contre, le suivant :/
 
exo 2
 
Il s'agit d'ecrire un programme assembleur qui lit une chaine de caractere au clavier, et affiche cette mem chaine converties en majuscules, puis en minuscule.
 
Exemple :
chaine saisie : AaBcdEF
chaine en maj : AABCDEF
chaine en min : aabcdef
 
chooooo :/
 
Vous m'aidez ? :)

Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)