Accueil > > > CONVERSION NOMBRE -> CHAINE DE CARACTÈRE (HEXA,DEC,OCT,BIN) (16BITS,MODE RÉEL, TASM)
CONVERSION NOMBRE -> CHAINE DE CARACTÈRE (HEXA,DEC,OCT,BIN) (16BITS,MODE RÉEL, TASM)
Information sur la source
Description
Ce code est 16bits mode réel. Il permet de convertir un nombre mis dans AX vers une chaine de caractères dans DS:SI dans plusieurs bases : -> Décimale -> Hexadécimale -> Binaire -> Octale Le code a été dévellopé avec TASM.
Source
- MODEL SMALL
- STACK 100h
-
- DATA SEGMENT
- Chaine DB 25 DUP ('$')
- Prompt DB 'Conversion de $'
- ChHexa DB 'en hexa :0x$'
- ChDec DB 'en decimal :$'
- ChBin DB 'en binaire :0b$'
- ChOct DB 'en octal :0o$'
- ChNeg DB 'en negatif :$'
- CRLF DB 13,10,'$'
- DATA ENDS
-
- CODE SEGMENT
- ASSUME CS:CODE,DS:DATA
-
- TerminalChar EQU '$'
-
- ;inverse une chaine
- ;==================
- ;DS:SI : adresse du début de la chaine
- ;DS:DI : adresse de fin de la chaine (avant le caractère de terminaison de chaine)
- InverseChaine PROC
- ;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
- boucleInv:
- ;on échange [DI] <-> [SI]
- MOV AL,byte ptr [DI]
- MOV AH,byte ptr [SI]
- MOV byte ptr [SI],AL
- MOV byte ptr [DI],AH
- ;octets suivants
- DEC DI
- INC SI
- ;tant que l'on n'a pas tout inversé (SI < DI)
- CMP SI,DI
- JL boucleInv
- RET
- InverseChaine ENDP
-
- ;convertit un nombre en sa représentation décimale (chaine)
- ;==========================================================
- ;DS:SI : adresse où stocker la chaine
- ;AX : nombre à convertir
- ;CX=1 : nombre signé, CX=0 : non signé
- ChaineDec PROC
- ;sauvegarde des registres
- PUSH DX
- PUSH DI
- PUSH CX
- PUSH SI
- PUSH AX
-
- ;si le nombre est non signé
- CMP CX,0
- ;on passe à la conversion
- JE PasSigne
- ;sinon, on calcule la valeur absolue
- ;si AX est >= 0
- CMP AX,0
- JGE PasSigne
- ;valeur absolue de AX
- NEG AX
- ;on ajoute le signe
- MOV byte ptr [SI],'-'
- ;on passe au caractère suivant
- INC SI
-
- PasSigne:
- ;sauvegarde de l'offset de départ de la chaine
- MOV DI,SI
-
- ;mot de poids fort dans le dividende
- XOR DX,DX
-
- ;tant qu'il y a des chiffres à ajouter
- boucleDec:
- ;CX=AX pour le calcule du reste de division
- MOV CX,AX
-
- ;division par 10 : algo de Terje Mathisen
- ;========================================
- MOV DX,0CCCDh
- ;on divise AX par 10 : résultat dans DX
- MUL DX
- SHR DX,3
- ;========================================
-
- ;on sauvegarde de résultat dans AX
- MOV AX,DX
-
- ;on calcule le reste de la division de CX(=AX avant division)
- SHL DX,1 ;DX = quotient * 2
- SUB CX,DX ;CX = divende - quotient * 2
- SHL DX,2 ;DX = quotient * 2 * 4 = quotient * 8
- SUB CX,DX ;CX = dividende - quotient * 2 - quotient * 8 = dividende - quotient * 10 = reste
-
- ;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
- ADD CX,'0'
-
- ;on le copie dans la chaine
- MOV byte ptr [DI],CL
-
- ;on passe au caractère suivant
- INC DI
- ;si le quotient est nul, on a fini la conversion
- CMP AX,0
- JA boucleDec
-
- ;on met un caractère de fin de chaine
- MOV byte ptr [DI],TerminalChar
-
- ;on se place avant le caractère de la fin de chaine
- DEC DI
-
- ;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
- CALL InverseChaine
-
- ;récupération des registres
- POP AX
- POP SI
- POP CX
- POP DI
- POP DX
- RET
- ChaineDec ENDP
-
- ;convertit un nombre en sa représentation héxadécimale (chaine)
- ;==============================================================
- ;DS:SI : adresse où stocker la chaine
- ;AX : nombre à convertir
- ;CX : nombre de digits
- ChaineHex PROC
- ;sauvegarde des registres
- PUSH DX
- PUSH DI
- PUSH CX
- PUSH SI
- PUSH AX
-
- ;sauvegarde de l'offset de départ de la chaine
- MOV DI,SI
-
-
- ;tant qu'il y a des chiffres à ajouter
- boucleHexa:
- ;DX=AX pour le calcul du reste de AX / 16
- MOV DX,AX
-
- ;DX = reste de la division de AX par 16
- AND DX,15 ;DX = AX and 01111b = AX mod 16
- ;on divise AX par 16 = 2 ^ 4
- SHR AX,4
-
- ;le reste DX est-il entre 0 et 9
- CMP DX,9
- ;si 9 < DX < 15
- JA LettreHexa
- ;sinon, un chiffre
- ADD DX,'0'
- JMP MetChaine
-
- ;on doit afficher une lettre Hexadécimale
- LettreHexa:
- ADD DX,'A'-10
-
- ;on met le caractère dans la chaine
- MetChaine:
- MOV byte ptr [DI],DL
-
- ;on passe au caractère suivant
- INC DI
- ;un digit affiché en plus
- DEC CX
- ;si le quotient est nul, on a fini la conversion
- CMP AX,0
- JA boucleHexa
-
- ;s'il n'y a plus de digit '0' à ajouter devant le nombre
- CMP CX,0
- ;on termine la chaine
- JLE FinChaineHexa
-
- ;sinon, on ajoute les '0' manquants
- boucle0Hexa:
- ;on met un "0"
- MOV byte ptr [DI],'0'
- ;on passe au caractère suivant
- INC DI
- ;tant que CX != 0
- LOOP boucle0Hexa
-
- ;on ajoute le caractère de fin de chaine
- FinChaineHexa:
-
- ;on met un caractère de fin de chaine
- MOV byte ptr [DI],TerminalChar
-
- ;on se place avant le caractère de la fin de chaine
- DEC DI
-
- ;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
- CALL InverseChaine
-
- ;récupération des registres
- POP AX
- POP SI
- POP CX
- POP DI
- POP DX
- RET
- ChaineHex ENDP
-
- ;convertit un nombre en sa représentation octale (chaine)
- ;==========================================================
- ;DS:SI : adresse où stocker la chaine
- ;AX : nombre à convertir
- ;CX : nombre de digits
- ChaineOct PROC
- ;sauvegarde des registres
- PUSH DX
- PUSH DI
- PUSH CX
- PUSH SI
- PUSH AX
-
- ;sauvegarde de l'offset de départ de la chaine
- MOV DI,SI
-
- ;tant qu'il y a des chiffres à ajouter
- boucleOct:
- ;on divise AX par 8 : quotient dans AX, reste dans DX (DL)
- ;calcul du reste
- MOV DL,AL ;DL=AL
- AND DL,07h ;DL = AL and 0111b = AL mod 8
- ;division par 2 ^ 3 = division par 8
- SHR AX,3
-
- ;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
- ADD DL,'0'
-
- ;on le copie dans la chaine
- MOV byte ptr [DI],DL
-
- ;on passe au caractère suivant
- INC DI
- ;on a un digit de plus
- DEC CX
- ;si le quotient est nul, on a fini la conversion
- CMP AX,0
- JA boucleOct
-
- ;s'il n'y a plus de digit '0' à ajouter devant le nombre
- CMP CX,0
- ;on termine la chaine
- JLE FinChaineOct
-
- ;sinon, on ajoute les '0' manquants
- boucle0Oct:
- ;on met un "0"
- MOV byte ptr [DI],'0'
- ;on passe au caractère suivant
- INC DI
- ;tant que CX != 0
- LOOP boucle0Oct
-
- ;on ajoute le caractère de fin de chaine
- FinChaineOct:
-
- ;on met un caractère de fin de chaine
- MOV byte ptr [DI],TerminalChar
-
- ;on se place avant le caractère de la fin de chaine
- DEC DI
-
- ;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
- CALL InverseChaine
-
- ;récupération des registres
- POP AX
- POP SI
- POP CX
- POP DI
- POP DX
- RET
- ChaineOct ENDP
-
- ;convertit un nombre en sa représentation décimale (chaine)
- ;==========================================================
- ;DS:SI : adresse où stocker la chaine
- ;AX : nombre à convertir
- ChaineBin PROC
- ;sauvegarde des registres
- PUSH DX
- PUSH DI
- PUSH CX
- PUSH SI
- PUSH AX
-
- ;sauvegarde de l'offset de départ de la chaine
- MOV DI,SI
-
- ;tant qu'il y a des chiffres à ajouter
- boucleBin:
- ;on divise AX par 2 : quotient dans AX, reste dans DX (DL)
- ;calcul du reste
- MOV DL,AL ;DL=AL
- AND DL,1 ;DL=AL and 2 = AL mod 2
- ;division par 2
- SHR AX,1
-
- ;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
- ADD DL,'0'
-
- ;on le copie dans la chaine
- MOV byte ptr [DI],DL
-
- ;on passe au caractère suivant
- INC DI
- ;on a un digit de plus
- DEC CX
- ;si le quotient est nul, on a fini la conversion
- CMP AX,0
- JA boucleBin
-
- ;s'il n'y a plus de digit '0' à ajouter devant le nombre
- CMP CX,0
- ;on termine la chaine
- JLE FinChaineBin
-
- ;sinon, on ajoute les '0' manquants
- boucle0Bin:
- ;on met un "0"
- MOV byte ptr [DI],'0'
- ;on passe au caractère suivant
- INC DI
- ;tant que CX != 0
- LOOP boucle0Bin
-
- ;on ajoute le caractère de fin de chaine
- FinChaineBin:
-
- ;on met un caractère de fin de chaine
- MOV byte ptr [DI],TerminalChar
-
- ;on se place avant le caractère de la fin de chaine
- DEC DI
-
- ;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
- CALL InverseChaine
-
- ;récupération des registres
- POP AX
- POP SI
- POP CX
- POP DI
- POP DX
- RET
- ChaineBin ENDP
-
- ;macro pour afficher une chaine à l'écran
- Printf MACRO Chain
- PUSH AX
- MOV AH,09h ;fonction 9 : "puts"
- LEA DX,Chain ;DS:DX : adresse de la chaine à afficher
- INT 21h ;interruption DOS
- POP AX
- ENDM
-
- ;programme principal de test
- Deb:
- ;init de DS
- MOV AX,DATA
- MOV DS,AX
-
- ;DS:SI : adresse de la chaine résultat
- LEA SI,Chaine
-
- ;nombre à afficher
- MOV AX,0FFF9h
-
- ;================
- Printf Prompt
-
- ;affichage
- ;pas de signe
- MOV CX,0
- ;conversion
- CALL ChaineDec
-
- Printf Chaine
- Printf CRLF
- ;================
- Printf ChDec
-
- ;affichage
- ;pas de signe
- MOV CX,0
- ;conversion
- CALL ChaineDec
-
- Printf Chaine
- Printf CRLF
- ;================
- Printf ChHexa
-
- ;affichage
- ;4 digits
- MOV CX,4
- ;conversion
- CALL ChaineHex
-
- Printf Chaine
- Printf CRLF
- ;================
- Printf ChOct
-
- ;affichage
- ;conversion
- CALL ChaineOct
-
- Printf Chaine
- Printf CRLF
- ;================
- Printf ChBin
-
- ;affichage
- ;16 digits
- MOV CX,16
- ;conversion
- CALL ChaineBin
-
- Printf Chaine
- Printf CRLF
- ;================
- Printf ChNeg
-
- ;affichage
- NEG AX
- ;un signe
- MOV CX,1
- ;conversion
- CALL ChaineDec
-
- Printf Chaine
- Printf CRLF
-
- MOV AL,0
- MOV AH,04Ch
- INT 21h
- CODE ENDS
- END Deb
MODEL SMALL
STACK 100h
DATA SEGMENT
Chaine DB 25 DUP ('$')
Prompt DB 'Conversion de $'
ChHexa DB 'en hexa :0x$'
ChDec DB 'en decimal :$'
ChBin DB 'en binaire :0b$'
ChOct DB 'en octal :0o$'
ChNeg DB 'en negatif :$'
CRLF DB 13,10,'$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
TerminalChar EQU '$'
;inverse une chaine
;==================
;DS:SI : adresse du début de la chaine
;DS:DI : adresse de fin de la chaine (avant le caractère de terminaison de chaine)
InverseChaine PROC
;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
boucleInv:
;on échange [DI] <-> [SI]
MOV AL,byte ptr [DI]
MOV AH,byte ptr [SI]
MOV byte ptr [SI],AL
MOV byte ptr [DI],AH
;octets suivants
DEC DI
INC SI
;tant que l'on n'a pas tout inversé (SI < DI)
CMP SI,DI
JL boucleInv
RET
InverseChaine ENDP
;convertit un nombre en sa représentation décimale (chaine)
;==========================================================
;DS:SI : adresse où stocker la chaine
;AX : nombre à convertir
;CX=1 : nombre signé, CX=0 : non signé
ChaineDec PROC
;sauvegarde des registres
PUSH DX
PUSH DI
PUSH CX
PUSH SI
PUSH AX
;si le nombre est non signé
CMP CX,0
;on passe à la conversion
JE PasSigne
;sinon, on calcule la valeur absolue
;si AX est >= 0
CMP AX,0
JGE PasSigne
;valeur absolue de AX
NEG AX
;on ajoute le signe
MOV byte ptr [SI],'-'
;on passe au caractère suivant
INC SI
PasSigne:
;sauvegarde de l'offset de départ de la chaine
MOV DI,SI
;mot de poids fort dans le dividende
XOR DX,DX
;tant qu'il y a des chiffres à ajouter
boucleDec:
;CX=AX pour le calcule du reste de division
MOV CX,AX
;division par 10 : algo de Terje Mathisen
;========================================
MOV DX,0CCCDh
;on divise AX par 10 : résultat dans DX
MUL DX
SHR DX,3
;========================================
;on sauvegarde de résultat dans AX
MOV AX,DX
;on calcule le reste de la division de CX(=AX avant division)
SHL DX,1 ;DX = quotient * 2
SUB CX,DX ;CX = divende - quotient * 2
SHL DX,2 ;DX = quotient * 2 * 4 = quotient * 8
SUB CX,DX ;CX = dividende - quotient * 2 - quotient * 8 = dividende - quotient * 10 = reste
;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
ADD CX,'0'
;on le copie dans la chaine
MOV byte ptr [DI],CL
;on passe au caractère suivant
INC DI
;si le quotient est nul, on a fini la conversion
CMP AX,0
JA boucleDec
;on met un caractère de fin de chaine
MOV byte ptr [DI],TerminalChar
;on se place avant le caractère de la fin de chaine
DEC DI
;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
CALL InverseChaine
;récupération des registres
POP AX
POP SI
POP CX
POP DI
POP DX
RET
ChaineDec ENDP
;convertit un nombre en sa représentation héxadécimale (chaine)
;==============================================================
;DS:SI : adresse où stocker la chaine
;AX : nombre à convertir
;CX : nombre de digits
ChaineHex PROC
;sauvegarde des registres
PUSH DX
PUSH DI
PUSH CX
PUSH SI
PUSH AX
;sauvegarde de l'offset de départ de la chaine
MOV DI,SI
;tant qu'il y a des chiffres à ajouter
boucleHexa:
;DX=AX pour le calcul du reste de AX / 16
MOV DX,AX
;DX = reste de la division de AX par 16
AND DX,15 ;DX = AX and 01111b = AX mod 16
;on divise AX par 16 = 2 ^ 4
SHR AX,4
;le reste DX est-il entre 0 et 9
CMP DX,9
;si 9 < DX < 15
JA LettreHexa
;sinon, un chiffre
ADD DX,'0'
JMP MetChaine
;on doit afficher une lettre Hexadécimale
LettreHexa:
ADD DX,'A'-10
;on met le caractère dans la chaine
MetChaine:
MOV byte ptr [DI],DL
;on passe au caractère suivant
INC DI
;un digit affiché en plus
DEC CX
;si le quotient est nul, on a fini la conversion
CMP AX,0
JA boucleHexa
;s'il n'y a plus de digit '0' à ajouter devant le nombre
CMP CX,0
;on termine la chaine
JLE FinChaineHexa
;sinon, on ajoute les '0' manquants
boucle0Hexa:
;on met un "0"
MOV byte ptr [DI],'0'
;on passe au caractère suivant
INC DI
;tant que CX != 0
LOOP boucle0Hexa
;on ajoute le caractère de fin de chaine
FinChaineHexa:
;on met un caractère de fin de chaine
MOV byte ptr [DI],TerminalChar
;on se place avant le caractère de la fin de chaine
DEC DI
;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
CALL InverseChaine
;récupération des registres
POP AX
POP SI
POP CX
POP DI
POP DX
RET
ChaineHex ENDP
;convertit un nombre en sa représentation octale (chaine)
;==========================================================
;DS:SI : adresse où stocker la chaine
;AX : nombre à convertir
;CX : nombre de digits
ChaineOct PROC
;sauvegarde des registres
PUSH DX
PUSH DI
PUSH CX
PUSH SI
PUSH AX
;sauvegarde de l'offset de départ de la chaine
MOV DI,SI
;tant qu'il y a des chiffres à ajouter
boucleOct:
;on divise AX par 8 : quotient dans AX, reste dans DX (DL)
;calcul du reste
MOV DL,AL ;DL=AL
AND DL,07h ;DL = AL and 0111b = AL mod 8
;division par 2 ^ 3 = division par 8
SHR AX,3
;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
ADD DL,'0'
;on le copie dans la chaine
MOV byte ptr [DI],DL
;on passe au caractère suivant
INC DI
;on a un digit de plus
DEC CX
;si le quotient est nul, on a fini la conversion
CMP AX,0
JA boucleOct
;s'il n'y a plus de digit '0' à ajouter devant le nombre
CMP CX,0
;on termine la chaine
JLE FinChaineOct
;sinon, on ajoute les '0' manquants
boucle0Oct:
;on met un "0"
MOV byte ptr [DI],'0'
;on passe au caractère suivant
INC DI
;tant que CX != 0
LOOP boucle0Oct
;on ajoute le caractère de fin de chaine
FinChaineOct:
;on met un caractère de fin de chaine
MOV byte ptr [DI],TerminalChar
;on se place avant le caractère de la fin de chaine
DEC DI
;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
CALL InverseChaine
;récupération des registres
POP AX
POP SI
POP CX
POP DI
POP DX
RET
ChaineOct ENDP
;convertit un nombre en sa représentation décimale (chaine)
;==========================================================
;DS:SI : adresse où stocker la chaine
;AX : nombre à convertir
ChaineBin PROC
;sauvegarde des registres
PUSH DX
PUSH DI
PUSH CX
PUSH SI
PUSH AX
;sauvegarde de l'offset de départ de la chaine
MOV DI,SI
;tant qu'il y a des chiffres à ajouter
boucleBin:
;on divise AX par 2 : quotient dans AX, reste dans DX (DL)
;calcul du reste
MOV DL,AL ;DL=AL
AND DL,1 ;DL=AL and 2 = AL mod 2
;division par 2
SHR AX,1
;on ajoute '0'=48 pour convertir le chiffre en code ascii correspondant
ADD DL,'0'
;on le copie dans la chaine
MOV byte ptr [DI],DL
;on passe au caractère suivant
INC DI
;on a un digit de plus
DEC CX
;si le quotient est nul, on a fini la conversion
CMP AX,0
JA boucleBin
;s'il n'y a plus de digit '0' à ajouter devant le nombre
CMP CX,0
;on termine la chaine
JLE FinChaineBin
;sinon, on ajoute les '0' manquants
boucle0Bin:
;on met un "0"
MOV byte ptr [DI],'0'
;on passe au caractère suivant
INC DI
;tant que CX != 0
LOOP boucle0Bin
;on ajoute le caractère de fin de chaine
FinChaineBin:
;on met un caractère de fin de chaine
MOV byte ptr [DI],TerminalChar
;on se place avant le caractère de la fin de chaine
DEC DI
;on inverse la chaine puisque l'on a calculé la représentation à l'envers (méthode des divisions successives)
CALL InverseChaine
;récupération des registres
POP AX
POP SI
POP CX
POP DI
POP DX
RET
ChaineBin ENDP
;macro pour afficher une chaine à l'écran
Printf MACRO Chain
PUSH AX
MOV AH,09h ;fonction 9 : "puts"
LEA DX,Chain ;DS:DX : adresse de la chaine à afficher
INT 21h ;interruption DOS
POP AX
ENDM
;programme principal de test
Deb:
;init de DS
MOV AX,DATA
MOV DS,AX
;DS:SI : adresse de la chaine résultat
LEA SI,Chaine
;nombre à afficher
MOV AX,0FFF9h
;================
Printf Prompt
;affichage
;pas de signe
MOV CX,0
;conversion
CALL ChaineDec
Printf Chaine
Printf CRLF
;================
Printf ChDec
;affichage
;pas de signe
MOV CX,0
;conversion
CALL ChaineDec
Printf Chaine
Printf CRLF
;================
Printf ChHexa
;affichage
;4 digits
MOV CX,4
;conversion
CALL ChaineHex
Printf Chaine
Printf CRLF
;================
Printf ChOct
;affichage
;conversion
CALL ChaineOct
Printf Chaine
Printf CRLF
;================
Printf ChBin
;affichage
;16 digits
MOV CX,16
;conversion
CALL ChaineBin
Printf Chaine
Printf CRLF
;================
Printf ChNeg
;affichage
NEG AX
;un signe
MOV CX,1
;conversion
CALL ChaineDec
Printf Chaine
Printf CRLF
MOV AL,0
MOV AH,04Ch
INT 21h
CODE ENDS
END Deb
Conclusion
N'hésitez pas à commenter et à noter...
Le code est commenté et optimisé (principalement DIV et MUL) dans les limites de mes connaissances...
Sources du même auteur
Sources de la même categorie
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Comment convertir une chaine de caractere en nombre [ par davidv ]
Voila,comment une chaine de caractere "12" par exemplepeut elle etre convertie en nombre 12.merci a tousdavidV
Nombre Parfait En Assembleur [ par kopindo ]
Bonjour,çava? bon,j'ai besoin de votre aide pour ce qui concerne ce exercice.et je sais pas comme dois-je commencer.merci d'avance je souhaite écrir
petit problême FPU [ par prunkdump ]
Bonjours, voilà je voudrais savoir comment afficher un nombre à vigule flottante lorsqu'il est en mémoire. Plus simplement comment convertir un nombre
conversion de nombre [ par jolindji ]
bonjour a tous... j'ai besoin d'un petit programme qui effectuerai la conversion d'un nombre entré au clavier en base 2,8,10,16ou quelque choes qui y
Ecriture de chaîne [ par Laurent1313 ]
Salut,Je cherche à modifier une chaîne en assembleur. Je prends donc un caractère, je fais un traitement dessus puis je recopie le caractère dans la c
Deconcatenation de chaîne [ par Stormy ]
Sur le site ASMFR, il y a une source récente sur la déconcaténation de chaîne. Celle-ci démontre comment obtenir une partie de chaîne seule. L'exemple
GENERATUER NOMBRE ALEATOIRE EN ASM [ par fser ]
| -= Fr@nçois =- | (cliquez pour m'envoyer un mail)mon siteMERCI DE FAIRE PARVENIR UN PROGRAMME EN ASSEMBLEUR POUR 68 HC 11 POUR GENER
Avez-vous des algorithmes pour la génération de nombre aléatoire? [ par Rigel Io ]
Salut, ma question est donc assez simple je voudrai seuleument savoir comment générer des nombres aléatoires. Je voudrai savoir car à chaque fois que
Aide nombre en asm 8086 16 bits [ par Maureka ]
je suis debutant en asm intel 16 bits.j'ai un projet à réaliser et cela consiste à faire un programme qui affiche la liste des nombres premiers compri
|
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
|