Le langage SMS est exclu sur les forums ProgBoards, tout message ne respectant pas la charte sera déplacé, modifié, ou supprimé par nos modérateurs.

Forum Langages » BASIC » hexadecimal à decimal

PHD
Visiteur
Citer Windows XP Mozilla 4 - Posté le 17/07/2011 à 20:23
existe t il une instruction pour convertir une chaine hexadecimale en nombre decimale.

le but est convertir une chaine hexadecimale provenant d'un port comme en code wiegand 26 bits directement exploitable
qbasic45
ProgBoarder
RemonterCiter Windows XP Mozilla 4 - Posté le 18/07/2011 à 18:11

Citation de PHDexiste t il une instruction pour convertir une chaine hexadecimale en nombre decimale.le but est convertir une chaine hexadecimale provenant d'un port comme en code wiegand 26 bits directement exploitable


bonjour
instruction et hex$
HEX$ - fonction qui retourne une chaŒne correspondant, en hexad‚cimal,
… la valeur de l'argument d‚cimal expression.

Syntaxe
HEX$(expression)
þ expression est une expression num‚rique qui a une valeur d‚cimale.

D‚tails sur la fonction HEX$

Syntaxe
HEX$(expression)

L'argument expression est arrondi … un entier, ou s'il se trouve hors des
limites des entiers, … un entier long, avant d'ˆtre ‚valu‚ par la HEX$.

Exemple de programmation pour la fonction HEX$

L'exemple ci-dessous affiche la valeur hexad‚cimale d'une valeur donn‚e en d‚cimal.

CLS ' Effacer l'‚cran.
INPUT X
A$ = HEX$(X)
PRINT X; "(d‚cimal) est ‚gal … "; A$; " en hexad‚cimal."
REM Sortie (exemple)
REM
REM ? 42
REM 42 (d‚cimal) est ‚gal … 2A en hexad‚cimal.
REM 11111 d‚cimal) est ‚gal … 2B67 en hexad‚cimal.
qbasic45
ProgBoarder
RemonterCiter Windows XP Mozilla 4 - Posté le 20/07/2011 à 12:09
bonjour
voici un stie qui fait le calcul lui meme
www.apprendre-en-ligne.net/crypto/images/bases.html
PHD
Visiteur
RemonterCiter Windows XP Mozilla 4 - Posté le 23/07/2011 à 07:43
bonjour,

En faite ce que je souhaite faire c'est l'inverse hexa vers decimal. Je cherche à réaliser une application le faisant automatiquement dés lors que la chaine hexadecimale se présente au port com d'où ma recherche de l'instruction qui ne semble pas exister en qbasic. Il est toujours possible de créer la fonction de conversion ça augmente juste le nombre de ligne c'est tout.
Merci en attendant pour les réponses.
SFLPMEA
ProgBoarder
RemonterCiter Windows XP Mozilla 5 - Posté le 24/07/2011 à 09:54
(héhé Salutations.

Que penser de :

DIM N AS STRING * 6
DEBUT:
INPUT Nb&
IF Nb& = 0 THEN END
N = HEX$(Nb&)
PRINT N
NH$ = "&H" + N
PRINT NH$
Nb& = VAL(NH$)
PRINT Nb&
GOTO DEBUT

Cela ne fonctionne pas toujours … Pourquoi ? Mystère …
Peut-être une idée à approfondir.

Complément

CLS
DIM N AS STRING * 4
DO
Nb& = Nb& + 1
IF Nb& MOD 100 = 0 THEN PRINT Nb&
N = HEX$(Nb&)
Nc& = VAL("&H" + N)
LOOP UNTIL Nb& <> Nc&
PRINT Nb&

Pour rechercher le <point d'erreur> ...

(héhé Salutations.



Edité par SFLPMEA ( 24/07/2011 11:06:41 )
Moi, mon ordinateur, je l'ai baptisé "Billy" ...
En remerciement, je reçois beaucoup de pages bleues !
SFLPMEA
ProgBoarder
RemonterCiter Windows XP Mozilla 5 - Posté le 27/07/2011 à 01:24
(héhé Salutations.

Je pense avoir trouvé une explication : ‘&H’ ne doit s’utiliser que devant une zone de 2 octets et donne un entier court positif SI le seizième bit est à 0 (utilisé avec LINE pour définir un style). Si ce bit existe à 1, le nombre devient négatif.
Il fallait chercher dans une autre direction … et j’ai trouvé ceci :

CLS
DIM N AS STRING * 4
DO
Nb& = Nb& + 1000
' Conversion de valeur numérique en type chaîne
N = MKL$(Nb&)
' Conversion d'une chaîne de 4 octets en nombre
Nc& = CVL(N)
IF Nb& MOD 50000 = 0 THEN
PRINT USING " * & * ########## ##########"; N; Nb&; Nc&
END IF
LOOP UNTIL Nb& <> Nc&
PRINT Nb&

Le programme se plante pour dépassement de capacité lorsque Nb& dépasse 2.147.483.000. Est-ce suffisant ?
Nous tenir au courant.

:D Salutations.
Moi, mon ordinateur, je l'ai baptisé "Billy" ...
En remerciement, je reçois beaucoup de pages bleues !

Poster une réponse

STOP aux fautes volontaires !
Message
Formatage
Note: pour partager du code source, merci d'utiliser le wall !
Smileys (sourire) (yekyek) (clein d'oeil) (désapprouve) (triste) (cool) (langue) (confus) (gêné) (neutre) (eek) (surpris) (diable) (flèche) (exclamation) (question) (diable) (idée) (méchant)
Pseudonyme
Recopiez le code
v6 © Computaid SPRL 2005-2012 - Tous droits réservés - Hébergé par eTigris - Page générée en 0,177 s - Crédits - Stats
1 connecté