Résultats de 1 à 2 sur 2

Sujet : vecteur binaire

  1. #1
    Membre MP
    Inscrit
    août 2013
    Messages
    1

    vecteur binaire

    salut nous sommes deux etudiants occupé sur un projet de moteur de recherche et nous sommes coincé sur la partie binaire du projet :? :?
    Nous avons un fichier indexé séquentiel qui contient un vecteur de type pic x.
    se vecteur est mis à blanc lors de sa création.

    Cependant, lorsque nous examinons les bits du vecteur, nous avons le bit n°6 de chaque byte à 1 ... nous avons essayer de mettre ce bit à 0 mais il ne veut pas changer le bougre

    Ci-joint, nous vous mettons le code source de getbit (qui retourne la valeur du bit) et setbit (qui permet de changer l\'état d\'un bit)


    GETBIT :
    ********
    INPUT : tab-decompr (vecteur de données)
    n (position du bit de 0 à n)
    OUTPUT : bit ( valeur du bit)

    identification division .
    program-id. getbit .
    environment division .
    configuration section.
    special-names.
    console is crt
    decimal-point is comma.
    data division .
    working-storage section .
    01 numbit pic 9.
    01 numcase pic 99999.
    01 inter .
    02 part1 pic x value low-value.
    02 part2 pic x.
    01 temp pic 999 usage binary redefines inter.
    linkage section .
    01 tab-decompr .
    03 decompr pic x occurs 99999 .
    01 n pic 9(5) .
    01 bit pic 9.
    procedure division using tab-decompr n bit.
    divide 8 into n giving numcase remainder numbit.
    add 1 to numcase .
    move decompr(numcase) to part2 .
    compute temp = (temp / (2 ** numbit)) .
    divide 2 into temp giving numbit remainder bit .

    exit.
    exit-program .


    SETBIT :
    ********
    INPUT : tab-decompr (vecteur de données)
    n (position du bit de 0 à n)
    bit ( valeur du bit)

    identification division .
    program-id.setbit .
    environment division .
    configuration section.
    special-names.
    console is crt
    decimal-point is comma.
    data division .
    working-storage section .
    01 inter.
    02 part1 pic x.
    02 part2 pic x.
    01 temp2 pic 999 usage binary redefines inter.
    01 numbit pic 9.
    01 numcase pic 99999.
    01 stat pic 9.
    linkage section .
    01 tab-decompr .
    03 decompr pic x occurs 99999 .
    01 n pic 9(5) .
    01 bit pic 9.
    procedure division using tab-decompr n bit.
    divide 8 into n giving numcase remainder numbit.
    add 1 to numcase .
    compute temp2 = (bit * 2 ** numbit).
    if bit=1 then
    call \"CBL_OR\" using part2 decompr(numcase)
    by value 1
    returning stat
    else
    subtract temp2 from 255 giving temp2
    call \"CBL_AND\" using part2 decompr(numcase)
    by value 1
    returning stat
    end-if.

    exit.
    exit-program .







    Un grand merci d\'avance ...


    2 pauvres étudiants

  2. #2
    Visiteur MP
    Visiteur MP
    pas regardé le code, mais espace n\'est
    pas l\'absence de caractère, c\'est le
    caractère ASCII 20 [ en héxa ] et en EBCDIC
    je ne sais plus.
    pour mettre tous les bits à zéro en cobol,
    utiliser low-value.
    @+

Informations du sujet

Utilisateur(s) parcourant ce sujet

il y a actuellement 1 utilisateur(s) parcourant ce sujet. (0 membre(s) et 1 visiteur(s))

Règles des messages

  • Vous ne pouvez pas créer de sujets
  • Vous ne pouvez pas répondre aux sujets
  • Vous ne pouvez pas importer de fichiers joints
  • Vous ne pouvez pas éditer vos messages
  •  
  • Les BB codes sont Activés
  • Les Smileys sont Activés
  • Le BB code [IMG] est Activé
  • Le code [VIDEO] est Activé
  • Le code HTML est Désactivé
Please disable Adblock!