Visualizzazione dei risultati da 1 a 6 su 6

Visualizzazione discussione

  1. #1

    convertire char da esadecimale a binario

    Questa e la parte che ho gia fatto, non riesco a converire da esa a bin, qualcuno mi puo dare una mano?


    codice:
    #include <cstdlib>
    #include <iostream>
    using namespace std;
    void visbyte(char ch);
    char esatobyte(char cifra1, char cifra0);
    int main(int argc, char *argv[])
    {
    char frame[73]; // non uso l'elemento zero
    string MAC_O, MAC_D, msg;
    int i;
    
    //INPUT
    MAC_O = "02-60-8C-E9-8B-01";
    MAC_D = "74-E5-43-19-30-CD";
    msg = "Ciao io sono il payload";
    
    // preambolo
    for(i=1; i<=7; i++){
    frame[i] = 170; 
    }
    // SFD 10101011 
    frame[8] = 171;
    
    
    // MAC Destinatario
    for(i=0; i<=15; i+=3){
    frame[9+(i/3)] = esatobyte(MAC_O[i], MAC_O[i+1]); 
    } 
    
    
    // ...........
    
    // OUTPUT
    for(i=1; i<=8; i++){
    visbyte(frame[i]);
    cout << " ";
    }
    
    system("PAUSE");
    return EXIT_SUCCESS;
    }
    // trasforma e visualizza ch in 8 bit
    void visbyte(char ch) {
    int bin[8];
    for (int i=0;i<8;i++) {
    bin[i]=((ch>>i)&1);
    }
    for (int i=0;i<8;i++) {
    cout<<bin[7-i];
    } 
    }
    char esatobyte(char cifra1, char cifra0) {
    char bin;
    
    if (cifra0 >= '0' && cifra0 <= '9') {
    bin = cifra0 - 48;
    // printf("bin = %c %d:\n", cifra0, cifra0); 
    } else {
    bin = cifra0 - 55; 
    }
    printf("bin = %d:", bin);
    // ... 
    
    return bin;
    }
    Ultima modifica di LeleFT; 06-11-2014 a 14:27 Motivo: Rimossa formattazione e aggiunti tag CODE

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.