IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Assembleur Discussion :

Transfert comptage bit vers tableau Word ou long


Sujet :

Assembleur

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 32
    Points : 27
    Points
    27
    Par défaut Transfert comptage bit vers tableau Word ou long
    Bonjour.

    La valeur 10 est representé par 0000 1010 en binaire.
    La valeur 11 est representé par 0000 1011 en binaire.

    Je souhaiterai faire une adition specifique des bit des valeurs 10 et 11 et mettre le résutat, dans un tableau Word ou Long de taille 8.
    TAB.w(7) ou TAB.l(7)

    le résultat de 10 + 11 donnerait ici 0000 2021, addition colonne par colonne des bits de chaque octet representant 10 et 11.

    Parmis les instructions mmx ou sse existe t'il des possibilités ?

    J'utilise Fasam.


  2. #2
    Modérateur
    Avatar de Obsidian
    Homme Profil pro
    Développeur en systèmes embarqués
    Inscrit en
    Septembre 2007
    Messages
    7 370
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 47
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur en systèmes embarqués
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2007
    Messages : 7 370
    Points : 23 625
    Points
    23 625
    Par défaut
    Bonjour,

    J'ai beaucoup de mal à comprendre ce que tu veux faire. Un bit, par définition, ne peut pas valoir « 2 ». Si tu veux réellement additionner chaque bit avec son homologue et stocker le résultat individuellement à chaque fois, le plus simple est d'extraire chaque bit et de le placer dans un octet entier qui lui est propre.


    Que cherches-tu à faire au final ?

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 32
    Points : 27
    Points
    27
    Par défaut
    Bonjour.

    Obsidian

    En effet au niveau bit 0/1 l'addition ne permet pas 2 ou plus.

    Juste pour étude.
    Je tente de réduire des données (0 ou 1) dans un Tableau 2D de bits (bitmap).
    0000 1010
    0000 1110
    ...

    L'unité de base étant l'octet, cela permet de réduire par 8 la taille par rapport à une allocation standard.

    Et a partir de ce tableau 2D de bit, faire des additions de lignes en mettant le résultat dans un tableau 1D de Word ou Long.

    1234 5678
    =======
    0000 1010
    +
    0000 1110
    =
    Tableau(1)=0
    Tableau(2)=0
    Tableau(3)=0
    Tableau(4)=0
    Tableau(5)=2
    Tableau(6)=1
    Tableau(7)=2
    Tableau(8)=0

  4. #4
    Membre chevronné
    Avatar de Forthman
    Homme Profil pro
    conception mécanique
    Inscrit en
    Janvier 2005
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 702
    Points : 1 905
    Points
    1 905
    Par défaut
    Je ne pige pas non plus...

    Comment fais tu pour reformer tes nombres binaires après ?

    1011
    + 0101
    = 1112 OK

    mais ...

    0011
    + 1101
    = 1112 aussi

    1111
    + 0001
    = 1112 aussi

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 32
    Points : 27
    Points
    27
    Par défaut
    Je penche sur la méthode décrite par Obsidian.
    extraire chaque bit et de le placer dans un octet entier qui lui est propre.

    les 8 bits donnant 8 positions possibles de stockage

    positions = 1234 5678 ou inverse 8765 4321
    bits = 0101 0110

    Conversion de la position de chaque bit en équivalant word // long.

    0101 0110 donnerait dans un tableau.word(8)

    tableau(1) =0
    tableau(2) =1
    tableau(3) =0
    tableau(4) =1
    tableau(5) =0
    tableau(6) =1
    tableau(7) =1
    tableau(8) =0

    On en reviendrait à extraire chaque bit et de le placer dans un octet entier qui lui est propre.


  6. #6
    Membre chevronné
    Avatar de Forthman
    Homme Profil pro
    conception mécanique
    Inscrit en
    Janvier 2005
    Messages
    702
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 48
    Localisation : France, Tarn et Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : conception mécanique
    Secteur : Industrie

    Informations forums :
    Inscription : Janvier 2005
    Messages : 702
    Points : 1 905
    Points
    1 905
    Par défaut
    donc tu codes une valeur 8 bits ( 1 octet ) dans un tableau 8x16 bits (16 octets )
    mais au final ça sert à quoi ? je ne comprends pas ce que tu veux faire

  7. #7
    Expert confirmé

    Inscrit en
    Août 2006
    Messages
    3 942
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 3 942
    Points : 5 654
    Points
    5 654
    Par défaut
    Joa,

    +1

    J'avoue ne pas voir le but de la manip ?
    Si les cons volaient, il ferait nuit à midi.

  8. #8
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    32
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 32
    Points : 27
    Points
    27
    Par défaut
    Salut.

    le but de la manip est juste pour étude.
    Une tentative de stoker des données( 0 ou 1) au niveau bit, soit 8 valeur possible par octet.
    Le stockage en lui meme ne pose pas de probléme .
    Effectivement tout calcul ensuite reste du domaine bit.

Discussions similaires

  1. [XL-2007] Données Excel vers tableau Word
    Par mchart911 dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 29/11/2013, 15h36
  2. Exporter excel vers tableau Word
    Par Raikko68 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 11/05/2011, 16h30
  3. Copie une heure de Excel vers tableau Word
    Par zakou76 dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 15/06/2010, 21h51
  4. transfert de Plage vers Tableau VBA
    Par Bonero dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 06/03/2010, 11h45
  5. [Automation]Transfert Etat graphique ver fichier Word/excel
    Par mbokmahop dans le forum VBA Access
    Réponses: 2
    Dernier message: 16/04/2007, 11h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo