Convertisseur binaire

Soyez le premier à donner votre avis sur cette source.

Vue 14 870 fois - Téléchargée 873 fois

Description

salut

Voila un convertisseur binaire "Binaire----> decimal & octet & Héxadecimal"
j'ai developpé cette Convertisseur binaire a l'aide d'un autre codes sources
mais je sais tres bien le contenu de cette derniere.
et puisque je suis entrain d'apprendre l'assembleur (ASM).
j'espere bien que mon convertisseur vous plais.

Merci @+

Codes Sources

A voir également

Ajouter un commentaire

Commentaires

Debiars
Messages postés
285
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
11 février 2018
-
Excuse-moi, Abdousoft, je n'ai nullement coulu dénigrer ton travail, mais simplement et titre d'exemple, te montrer qu'on pouvait arriver au même résultat en travaillant beaucoup moins, ce qui est le propre d'un bon programmeur.
cs_abdousoft
Messages postés
101
Date d'inscription
mardi 3 août 2004
Statut
Membre
Dernière intervention
5 novembre 2007
-
Salut
mr Debiars , je te dit que j'ai debuter avec ce simple programme, parceque je suis en cours d'apprendre le ASM c'est tout, et pour moi j'ai fait un grand travail.
Merci pour tes commentaires. c'est tres gentille a la prt de vous et de l'ami Foxi.

c'est vrai nous somme tous des debutnts.
Merci @+
Debiars
Messages postés
285
Date d'inscription
lundi 16 juin 2003
Statut
Membre
Dernière intervention
11 février 2018
-
Après la belle tirade de l'ami Foxi et pour faire dans la simplicité, je te communique la réécriture que je me suis permis de faire de ton prog à titre d'exemple. Le résultat est le même mais l'économie de moyens est appréciable.

Tout d'abord, j'ai supprimé les boutons qui ne servaient à rien. On peut très bien cliquer sur un TEdit. J'en ai d'ailleurs rajouté un pour porter le nombre de bits à 16, ce qui correspond à un "word".

On ne crée que la procédure OnClick de Ed0 et on fait pointer les évènements OnClick de Ed1 à 15 sur cette même proc.

Pour le reste, voir les commentaires...

var
PrincipFrm: TPrincipFrm;
tbval : array[0..15] of word;
num : word;

implementation

{$R *.dfm}

procedure TPrincipFrm.FormCreate(Sender: TObject);
var i : byte;
begin // calcul des valeurs des bits
tbval[0] := 1;
for i := 1 to 15 do
tbval[i] := tbval[i-1] * 2;
end;

//-----------------------------------------------------

function TPrincipFrm.Bit(n : byte) : TEdit; // référencer un TEdit à l'aide
begin // de son numéro
Result := FindComponent('Ed'+IntToStr(n)) as TEdit;
end;

// on n'utilise l'évenement OnClick que de Ed0 et on l'affecte aux Ed de 1 à 15
// la propriété Tag de chaque Ed est affectée du numéro de l'Ed pour pouvoir
// l'identifier.
procedure TPrincipFrm.Ed0Click(Sender: TObject);
var i : byte;
c0,c1 : byte;
begin
i := (Sender as TEdit).Tag; // identifier le TEdit cliqué
if Bit(i).Text = '0' then Bit(i).Text := '1' // inverser la valeur du bit
else Bit(i).Text := '0';
num := 0;
for i := 0 to 15 do // calculer la valeur en décimal
if Bit(i).Text = '1' then num := num + tbval[i];
DecEdit.text:=IntToStr(num); // et l'afficher
HexEdit.TexT := IntToHex(num,4); // afficher la valeur en hexadécimal
c0 := Lo(num); // extrait l'octet de poids faible
c1 := Hi(num); // extrait l'octet de poids fort
if c1 > 31 then OctEdit.Text := Chr(c1)
else OctEdit.Text := ' ';
if c0 > 31 then OctEdit.Text := OctEdit.Text+Chr(c0)
else OctEdit.Text := OctEdit.Text+' ';
end;

procedure TPrincipFrm.SpeedButton1Click(Sender: TObject);
begin
Close;
end;

procedure TPrincipFrm.Timer1Timer(Sender: TObject);
begin
DTLabel.Caption := DateTimeTostr(Now);
end;

end.

On peut p'têt fair plus concis, si...
f0xi
Messages postés
4200
Date d'inscription
samedi 16 octobre 2004
Statut
Modérateur
Dernière intervention
2 janvier 2019
26 -
ouai tu as debutant et debutant ... comme le dit jean_jean, on est tous plus ou moins debutant mais avec un certains niveau technique derriere.

on peu trés bien faire des programmes aboutis, lourd, techniquement pauvre, mais qui marche ... mais ça fait pas de nous un "pur pro" de delphi.

meme moi je me considere pas comme un pro ou un expert mais plus comme un amateur avertis avec un bon niveau technique.
aprés, y'a toujours pleins de truc qu'on ne sait pas faire et sur lequels on rame car ... on y comprend que dalle.

aprés c'est comme tout, y'a une difference entre la technique et l'experience tout comme la theorie et la pratique.

mais comme disaient mes profs de math, le resultat importe peu, c'est comment on arrive a ce resultat qui est important.

meme si le resultat est bon, quand on applique une methode pourrie le resultat est pourrie egalement. c'est comme en cuisine, si tu fait des crepe en dosant n'importe comment en mettant les oeuf avec la coquille et en vidant la bouteille de grand-margnier dedans, le tout dans un gros mixer ... y'a des chance pour que tes crepes soit foireuses et que les gens qui les mangent finissent aux urgences...
cs_Jean_Jean
Messages postés
637
Date d'inscription
dimanche 13 août 2006
Statut
Membre
Dernière intervention
13 décembre 2018
2 -
Nous sommes tous des débutants et je m'y inclus et pourtant j'ai été un professionnel à la pointe à une époque ...

Alors tu vois, il n'y a pas de mal dans ce que je dis.

Moi, je suis toujours heureux d'apprendre de l'autre. Je disais ça pour t'aider à ma façon. Google est un outil sympa aussi avec un peu d'habitude.

La vie est belle!

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.